概述
触发器概述
触发器
(Trigger)是一种特殊的存储过程,它与表紧密相连,可以是表定义的一部分。当预定义的事件发生时,触发器将会自动执行。触发器基于一个表创建,但是可以针对多个表进行操作,因此触发器可以用来对表实施复杂的完整性约束。当触发器保存的数据发生改变时,触发器被自动激活,从而防止对数据进行不正确的修改。触发器的优点如下:
-
触发器自动执行,在表的数据做了任何修改之后立即激活。
-
触发器可以通过数据库中的相关表进行层叠更改
-
触发器可以强制限制,这些限制比用CHECK约束定义的更复杂。与CHECK约束不同的是,触发器可以引用其他表中的列。
创建触发器
# 创建触发器
CREATE TRIGGER trigger_name trigger_time trigger_event ON tb_name FOR EACH ROW trigger_statement;
trigger_time:
BEFORE|AFTER
trigger_event:
INSERT|UPDATE|DELETE
在触发器的SQL语句中,可以关联表中的任何列,使用OLD和NEW列名来标识,如OLD.col_name、NEW.col_name。OLD.col_name关联现有行的一列在被更新或删除前的值,NEW.col_name关联一个新行的插入或更新现有行的一列值。
-
对于INSERT语句,只有NEW是合法的。
-
对于DELETE语句,只有OLD是合法的。
-
对于UPDATE语句,NEW和OLD可以同时使用。
定义外键约束和触发器是保证数据完整性的两种不同方式,并不矛盾。
查看触发器
查看触发器
是指查看数据库中已存在的触发器的定义、状态和语法信息等。
SHOW TRIGGERS;
或
SELECT * FROM information_schema.triggers [WHERE trigger_name='触发器名称'];
删除触发器
DROP TRIGGER [dbname.]trigger_name;
(最近更新:2019年09月03日)
最后
以上就是傲娇帽子为你收集整理的数据库:创建和使用触发器的全部内容,希望文章能够帮你解决数据库:创建和使用触发器所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复