我是靠谱客的博主 含糊小懒猪,最近开发中收集的这篇文章主要介绍mysql触发器 注意事项(一)以上纯属自己经验,有什么不对的地方还请大佬指正,本人qq:2468246227,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
虽然在开发项目中触发器很少使用(基本上都是靠代码来进行维护),但是这种触发器的思路我们可以借鉴,定义自己的hook事件,简单讲一下在触发器中遇到的一些问题。
1,创建触发器时,mysql数据表的存储引擎是innodb
2,navicate 创建mysql触发器:触发器是基于表的,右击表选择设计表,里面有触发器。
3,在mysql 目前5.7版本,触发器调用存储过程,存储过程不能使用动态sql ,另外存储过程中调用动态sql如下:
SET @sel_sql = CONCAT(
"SELECT COUNT(id) AS count FROM sample
WHERE is_del = 1",
opt,
" AND last_commit_time >'",
start_hour,
"' AND last_commit_time < '",
end_hour,
"' ORDER BY last_commit_time into @datas"
);
其中,opt 和 start_hour 是传过来的变量。我这里面查询的数据 后续需要使用 所以我进行一个 into @datas
上面这一步是进行拼接sql, 下面这一步是执行(详情可以百度)
;set @excutesql = @sel_sql; //可以不写
PREPARE stmt from @excutesql; // 加载资源
execute stmt; // 执行
DEALLOCATE PREPARE stmt; //释放 资源
SELECT @datas INTO datas
以上纯属自己经验,有什么不对的地方还请大佬指正,本人qq:2468246227
最后
以上就是含糊小懒猪为你收集整理的mysql触发器 注意事项(一)以上纯属自己经验,有什么不对的地方还请大佬指正,本人qq:2468246227的全部内容,希望文章能够帮你解决mysql触发器 注意事项(一)以上纯属自己经验,有什么不对的地方还请大佬指正,本人qq:2468246227所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复