欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

mysql触发器new和old

程序员文章站 2023-04-08 08:00:48
下面为您介绍mysql触发器new old的相关知识,供您参考学习,如果您在mysql触发器方面遇到过类似的问题,不妨一看,相信对您会有所帮助。 mysql触发器new old: "NEW . column_name"或者"OLD . column_name".这样在技术上处理(NEW | OLD ......

下面为您介绍mysql触发器new old的相关知识,供您参考学习,如果您在触发器方面遇到过类似的问题,不妨一看,相信对您会有所帮助。

mysql触发器new old:

"new . column_name"或者"old . column_name".这样在技术上处理(new | old . column_name)新和旧

的列名属于创建了过渡变量("transition variables")。

对于insert语句,只有new是合法的;对于delete语句,只有old才合法;而update语句可以在和new以及

old同时使用。下面是一个update中同时使用new和old的例子。


create trigger tr1  
before update on t22   
for each row   
begin   
set @old = old.s1;   
set @new = new.s1;   
end; 

现在如果t21表中的s1列的值是55,那么执行了"update t21 set s1 = s1 + 1"之后@old的值会变成55,

而@new的值将会变成56。

触发器的执行间隔:for each row子句通知触发器每隔一行执行一次动作,而不是对整个表执行一次。

列值递增:


create table a(  
id int primary key auto_increment,##设置为自动递增  
name varchar(10)  
); 

设置初始值为1000 :
alter   table   tablename   auto_increment=1000;