触发器与存储过程

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 //

相关推荐
likangbinlxa2 小时前
【Oracle11g SQL详解】UPDATE 和 DELETE 操作的正确使用
数据库·sql
r i c k3 小时前
数据库系统学习笔记
数据库·笔记·学习
野犬寒鸦3 小时前
从零起步学习JVM || 第一章:类加载器与双亲委派机制模型详解
java·jvm·数据库·后端·学习
IvorySQL4 小时前
PostgreSQL 分区表的 ALTER TABLE 语句执行机制解析
数据库·postgresql·开源
·云扬·4 小时前
MySQL 8.0 Redo Log 归档与禁用实战指南
android·数据库·mysql
IT邦德4 小时前
Oracle 26ai DataGuard 搭建(RAC到单机)
数据库·oracle
惊讶的猫4 小时前
redis分片集群
数据库·redis·缓存·分片集群·海量数据存储·高并发写
不爱缺氧i4 小时前
完全卸载MariaDB
数据库·mariadb
纤纡.5 小时前
Linux中SQL 从基础到进阶:五大分类详解与表结构操作(ALTER/DROP)全攻略
linux·数据库·sql
jiunian_cn5 小时前
【Redis】渐进式遍历
数据库·redis·缓存