返回列表 发帖

MySQL触发器 实例263(图)

MySQL触发器

触发器在数据库系统开发过程中具有非常重要的作用,例如可以防止有害数据录入数据库,可以改变或取消insert、update和delete语句的执行及在一个会话中监听数据库中的数据的改变。

实例263:创建触发器

这是一个创建触发器的实例
录像位置:光盘\mingrisoft\09\263


实例说明

如果用户打算在数据库中通过触发器实现某一动作的监听,那么首先应该创建触发器,触发器是在“命令提示符”下创建的,如图9.16所示。


技术要点

MySQL数据库创建触发器的格式如下: create trigger <触发器名称>{ before | after}{insert | update | delete}on <表名>for each row<触发器SQL语句>   


create trigger <触发器名称>:创建一个新触发器,并指定触发器的名称。
{ before | after}:用于指定在insert、update或delete语句执行前触发还是在语句执行后触发。
on <表名>:用于指定响应该触发器的表名。
for each row:触发器的执行间隔,for each row 通知触发器每隔一行执行一次动作,而不是对整个表执行一次。
<触发器SQL语句>:触发器要执行的SQL语句,如果该触发器要执行多条SQL语句,要将多条语句放在begin…end块中。


实现过程

(1)在“命令提示符”下创建数据表tb_test。代码如下: create table tb_test(t_id varchar(20),t_name varchar(20))


(2)将换行标记转换为“//”。代码如下: delimiter //


(3)创建触发器,实现无论用户向表tb_test添加什么数据都使字段t_name的内容为“mrsoft”。代码如下: create trigger test_tribefore insert on tb_testfor each rowset new.t_name='mrsoft'   


(4)向表tb_test添加一条记录,并查看添加后的结果。代码如下: insert into tb_test(t_id,t_name) values('mr0001', '123')//select * from tb_test  


举一反三

根据本实例,读者可以:
为某表创建触发器,要求在更新数据前触发。
为某表创建触发器,要求在删除数据前触发。
附件: 您需要登录才可以下载或查看附件。没有帐号?注册
让中国Python发展的更快 ,更好.

返回列表