我正在尝试创建一个触发器,它将做两件事:
UPDATE
在完成之前将所有内容从表 X 中的一行复制到表 Y 中的一行- 将表 X 中一行的一列复制到表 Y 中
UPDATE
from no 之后的一行。1 完成
这是我到目前为止所拥有的:
delimiter //
create trigger log
before update on opnaar
for each ROW
begin
set @a = opnaar.id;
set @c = opnaar.initials;
set @d = opnaar.revised;
set @f = opnaar.course;
insert into log(id,init_old,date_old,date_new,course) values (@a,@c,@d,NOW(),@f);
end;
after update on opnaar
for each ROW
begin
set @e = opnaar.initials;
insert into log(init_new) values (@e);
end;
但我认为不可能只向表中已经存在的行添加一个值。至少,不是我试图这样做的方式。我应该把它after update
放在第一个动作中吗?
示例:我有这个内容:
我想将 、 和 复制course
到revised
另一个initials
表id
。这就是我的第一个动作应该做的。
在老师更新了该表中的某些内容后,应该将新的首字母(但与旧的首字母在同一列)复制到表 Y。这就是我的第二个动作应该做的。
我究竟做错了什么?
谢谢你。