查询在mysql中创建触发器

时间:2015-01-22 15:41:21

标签: mysql

我有一个名为sample_table的表,其列为col_a,col_b,col_c。 我试图在MySQL 5.6中创建一个触发器,它将在插入行时更新col_c(作为concat(col_a,col_b))。我为此写的查询是:

create trigger trg_sample_table
after insert on sample_table
for each row
begin
set col_c=concat(col_a,col_b)
end;

在运行此sql时,我得到的错误是:     错误1064(42000):您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以便在第6行的“结束”附近使用正确的语法。

你们中的任何一位能帮助我根据需要创建一个触发器吗?

1 个答案:

答案 0 :(得分:2)

您需要将其设为before insert。试试这个:

    create trigger trg_sample_table before insert on sample_table for each row
    begin
       set new.col_c=concat(new.col_a,new.col_b);
    end;

您无法修改刚插入after insert触发器的行。如果要修改它,则需要在before insert

中完成