我是靠谱客的博主 无心小甜瓜,最近开发中收集的这篇文章主要介绍mysql 触发器 trigger 中断操作 抛出异常,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

通常情况下会遇到如下需求,当insert的时候,如果已经有记录,则中断操作,抛出相应错误。

mysql命令行创建trigger的时候要注意一下分号的使用,因为mysql解析器遇到分号会执行,所以我们需要用delimiter声明一个执行符号,如//


创建trigger语句如下

CREATE TRIGGER tg_user_before_create BEFORE INSERT ON user FOR EACH ROW
BEGIN
set @count = (SELECT COUNT(*) FROM user WHERE NEW.name=name AND NEW.age=age AND NEW.gender=gender);
if @count > 0 then
SIGNAL SQLSTATE 'TX000' SET MESSAGE_TEXT = 'user has been exsits';
end if;
END; 


注意:NEW是mysql的关键字,即新的记录对象

最后

以上就是无心小甜瓜为你收集整理的mysql 触发器 trigger 中断操作 抛出异常的全部内容,希望文章能够帮你解决mysql 触发器 trigger 中断操作 抛出异常所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(47)

评论列表共有 0 条评论

立即
投稿
返回
顶部