触发器

来源:互联网 发布:java中compareto 编辑:程序博客网 时间:2024/06/15 22:47

触发器是由事件来触发的某个特定的操作,事件就是insert update 等语句。数据库执行这些语句时就会激活触发器执行响应的操作。例如,学生表中没增加一个学生,学生总数就必须同时发生改变,这里可以创建一个触发器,每增加一个学生就执行一个计算学生总数的操作。、

创建一个只有一个执行语句的触发器:
 CREATE TRIGGER 触发器名 BEFORE | AFTER 触发事件 ON 表名 FOR
EACH ROW 执行语句;
BEFORE | AFTER :指定了触发器执行的时间, 触发事件:包括INSERT\UPDATE\DELETE    表名:触发事件要操作的表名。
FOR EACH ROW表示任何一条记录上的操作满足触发事件都会触发该触发器。

‘执行语句’:触发器触发后执行的程序。
eg: CREATE TRIGGER  dept BEFORE INSERT ON department
FOR EACH ROW  INSERT INTO trigger_time VALUES(NOW());

创建多个执行语句的触发器:
 CREATE TRIGGER 触发器名 BEFORE | AFTER 触发事件
ON 表名  FOR EACH ROW
BEGIN
执行语句;
     执行语句;

      。。。。
END

查看触发器:
SHOW TRIGGERS

Mysql中所有的触发器都存在information_schema数据库下的triggers表中:可以查看数据库中所有触发器的详细信息。
select * from information_schema.triggers;

删除触发器:
 drop trigger 触发器名;

0 0
原创粉丝点击