触发器:
1)触发对象
同一张表或者两张表
2)触发时间:
After
Before
3)触发事件
Insert:NEW字段名
Delete:OLD字段名
Update:NEW字段名 OLD字段名
执行步骤:
Mysql>insert into t1 values(5);//客户端
//先发送到服务器端,判断,
Mysql>create trigger t1_insert before insert(事件1) on t1 for each row
u Begin
Ø …………………….
u Set @x=2;(在执行insert之前执行这个语句)
u ……………..
u End
After和before针对的是事件1和事件2到底哪个先执行
如果为after则表示事件1先执行
如果为before则表示事件2先执行
针对on关键字后的表执行事件1必须先输入----发送给服务器端去执行
后触发时执行顺序
Mysql>select @x;
Mysql>insert into t1 values(10);
发送到服务器端,判断---执行insert,后执行(块begin…end)set @x=2;
Mysql>select @x;
Mysql>insert into t1 values(5);//在客户端写该SQL语句
//先发送到服务器端,判断---set @x=2; 执行insert
//insert的东西都应该用NEW关键字 NEW.字段名----表示on关键字后的表(t1)中字段名
//OLD
数据类型(整型,浮点,字符串,位(布尔)、文本,时间日期、枚举(都是字符串对象))
常见sql语句(insert delete update select alter create)
常见函数(数学、字符串,集合、时间日期、if())
视图、关联(子查询)
存储过程(流程控制语句,变量(用户自定义,局部变量、系统变量、系统信息变量))
触发器(流程控制语句)