Mysql 创建触发器时出错

Mysql Error when creating trigger

error note:Error : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@sum int default 0;
    set @sum=(select count(*) from inserted);
    if @sum>1 then
    ' at line 5

这是代码:

delimiter //

create trigger insert_only_one

after insert on sc

for each row

begin

declare @sum int default 0;

set @sum=(select count(*) from inserted);

if @sum>1 then

print('dont insert more than one record');

rollback transaction

end

错误说明显示我在第 5 行有错误。 我试过 int(5) 或只是 'int',有或没有 default 0 仍然无法工作。

您不需要声明变量,因为您使用的是自动初始化的@sum 变量..

你不能在触发器中打印任何东西...

您的命令回滚事务对于 MySQL 也是无效的。 仅使用带分号的回滚..