create
definer ='root'.'localhost'
trigger 'maria'.'profesori'
before insert on 'maria'.'profesori'
for each row
begin
declare mesaj varchar (150);
if new.nume='Tudor' then
set mesaj='eroare';
signal sqlstate'4500' set message_text=mesaj;
end if;
end $$;'
但我一直收到此错误消息:
错误1064(42000):您的SQL语法有错误;检查手册 对应于您的MySQL服务器版本,以便在&#39 ;;附近使用正确的语法; 创建 definer =' root'。' localhost' 触发玛丽亚'。' profesori' 在插入o'之前在第1行
答案 0 :(得分:1)
尝试:
create
definer ='root'@'localhost'
trigger `maria`.`profesori`
before insert on `maria`.`profesori`
for each row
begin
declare mesaj varchar (150);
if new.nume='Tudor' then
set mesaj='eroare';
signal sqlstate'4500' set message_text=mesaj;
end if;
end $$
user@host
,而不是user.host
。;
之后的$$
可能会出现问题。答案 1 :(得分:-2)
更改: 信号sqlstate' 4500' set message_text = mesaj; 对此: 信号sqlstate' 45000' set message_text = mesaj;