触发器与存储过程

1.mysql> create trigger orders_insert_after_trigger after

-> insert on orders for each row

-> update goods set num=num-new.onum

-> where gid=new.gid;

2.mysql> create trigger order_delete_after_trigger after

-> delete on orders for each row

-> update goods set num=num+old.onum

-> where gid=old.gid;

mysql> delete from orders where oid=1;

3.mysql> create trigger order_update_after_trigger after

-> update on orders for each row

-> update goods set num=num+(new.onum-old.onum)

-> where gid=old.gid;

mysql> insert into orders(gid,name,price,onum,otime) value('D0001','计算器',28,20,now());

mysql> update orders set onum=10 where gid='D0001';

存储过程

1.mysql> create procedure proc20()

-> begin

-> select name,incoming from emp_new;

-> end //

Query OK, 0 rows affected (0.01 sec)

@age会话变量用于接收传回的值

3.mysql> create procedure s3(in in_dept int,out avg_sal float)

-> begin

-> select avg(incoming) into avg_sal from emp_new where dept=in_dept;

-> end //

相关推荐
望获linux1 小时前
【Linux基础知识系列】第一百一十篇 - 使用Nmap进行网络安全扫描
java·linux·开发语言·前端·数据库·信息可视化·php
乘乘凉1 小时前
Python中函数的闭包和装饰器
前端·数据库·python
༒࿈༙྇洞察༙༙྇྇࿈༒4 小时前
PostgreSQL快速入门
数据库·postgresql
携欢4 小时前
Portswigger靶场之Visible error-based SQL injection通关秘籍
数据库·sql
-XWB-5 小时前
PostgreSQL诊断系列(4/6):表空间与膨胀分析——解决“越用越大”的存储难题
数据库·postgresql
幸福清风5 小时前
【SQL】深入理解MySQL存储过程:MySQL流程控制语句详解
数据库·sql·mysql
她说人狗殊途5 小时前
DDL DML DQL DCL 语句
数据库·oracle
**AE86**7 小时前
sed截取慢SQL大文件并导出指定时间范围内容
数据库·sql·sed
小清兔8 小时前
c#基础知识
开发语言·数据库·学习·unity·c#·游戏引擎·.net
天上掉下来个程小白8 小时前
微服务-25.网关登录校验-网关传递用户到微服务
java·数据库·微服务