我试图通过以下代码防止列上的值重复,但出现语法错误:
如果存在(从第1行的tbl\u baiviet'中选择*
DELIMITER $$
CREATE TRIGGER key_as_linksp ON tbl_baivietsp
AFTER INSERT
AS
if exists ( select * from tbl_baivietsp t inner join INSERTED i on i.LINK_SP
LIKE CONCAT('%', t.LINK_SP ,'%'))
begin
rollback TRANSACTION
RAISERROR ('Duplicate Data', 16, 1);
end
go
$$
DELIMITER ;
真的不知道下班后有什么问题,谢谢你的时间帮我!
1条答案
按热度按时间t2a7ltrp1#
您已经在tsql(microsoftsqlserver)中编写了一个触发器代码;但是您使用的是mysql。建议检查触发器文档:https://dev.mysql.com/doc/refman/8.0/en/trigger-syntax.html
在mysql中,我们使用
SIGNAL .. SET MESSAGE_TEXT ..
在触发器内部引发异常。