Mysql 更新前触发器中未设置的列的值是什么?
根据MySQL 在更新前触发器中有两个mysql扩展,即NEW和 OLD指的是更新行的新旧列值 我的桌子是:Mysql 更新前触发器中未设置的列的值是什么?,mysql,triggers,mysql-5.5,Mysql,Triggers,Mysql 5.5,根据MySQL 在更新前触发器中有两个mysql扩展,即NEW和 OLD指的是更新行的新旧列值 我的桌子是: create table foo ( id primary key auto_increment, fname varchar(10), lname varchar(10) ); 我插入了一行: 如果我运
create table foo ( id primary key auto_increment,
fname varchar(10),
lname varchar(10)
);
我插入了一行:
如果我运行如下更新:
那么,在此表的更新前触发器中,以下值是什么:
如果您在询问之前检查一下,会怎么样?@zerkms NEW.fname=Edam1和NEW.lname=Chuti。我用测试数据库检查了一下,但对我来说没有意义。所以我想听听人们的意见。所以,如果我不设置一些列,那么这些未设置列的新值等于这些列的旧值。它们不是旧值,它们是执行更新后的值执行更新后的值?但我说的是更新前触发。我不明白为什么更新后会出现在这里。
insert into foo (fname,lname) values ("Edam","Chuti");
update foo set fname="Edam1" where id=1;
NEW.fname=?
NEW.lname=?