我是靠谱客的博主 难过抽屉,最近开发中收集的这篇文章主要介绍MySQL触发器一,解释二,实战演练  三,代码演练四,注释 ,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一,解释

实现操作

假设 有  a表   ,   b表
当更改或插入或删除 a表的数据时 b表数据会同步更新


二,实战演练  

试题

                创建一个触发器trig_bbs_profile,当新增一条帖子记录时触发,使板块表的帖子数加1,           同时更新最近发帖时间

        需求说明:bbs发一个帖子,板块总贴数加1

板块表bbs_board :

                        字段  board_id(板块id)、    board_name(板块名称),

                                 profile_num(帖子数),  last_time(最近发帖时间)

                                

图示:

帖子表bbs_profile:

                        字段   id(帖子id),                       board_id(板块id),        title(标题),

                                  content(内容),             user_id(创建人),      user_id(创建人),

                                  create_time(发帖时间)

                                                                                   

图示:


三,代码演练

比如 更新    

        当 bbs_profile表有更改数据操作时 , bbs_board表中profile_num 列值+1,且获取最新时间

代码:

DROP trigger if EXISTS tr;
delimiter//
CREATE trigger tr AFTER UPDATE ON bbs_profile
for each row 
begin
UPDATE bbs_board SET profile_num=profile_num+1 , bbs_board.last_time=NOW()
WHERE bbs_board.board_id=new.board_id;    --通过两表共有的board_id 连接两表 
END//
delimiter;


四,注释 

          注释字符 **

4.1注释:
             drop trigger if EXISTS tr;      **  如果存在此名的触发器替换掉 如果不存在就新建 
  
             delimiter//
             create trigger 触发器名字 时间(after|before)触发动作 (update,insert,delete) ON 表1
             for each row                  **固定语法 无具体意义但必须写
             begin
                       sql语句 表2;
              end//                                    **begin与end之间  表二的执行语句 
            delimiter;     

                                        **当表1 出现触发动作时 表二的数据会同步  

4.2单释
                时间:  after  触发之后执行 表二的sql语句      
                            before 触发之前执行 表二的sql语句

                触发动作:表1的 增删改操作

                delimiter :结束符 成对出现   表示让系统知悉运行结束         

最后

以上就是难过抽屉为你收集整理的MySQL触发器一,解释二,实战演练  三,代码演练四,注释 的全部内容,希望文章能够帮你解决MySQL触发器一,解释二,实战演练  三,代码演练四,注释 所遇到的程序开发问题。

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

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

评论列表共有 0 条评论

立即
投稿
返回
顶部