手机版

Informix触发器 创建插入、更新和删除触发器示例

时间:2021-08-04 来源:互联网 编辑:宝哥软件园 浏览:

类型:系统工具大小:11.9M语言:中文评分:2.7标签:立即下载实例:在一个基表上创建插入、更新、删除三个触发器,将基表上的操作保存在监控表中,监控基表的操作过程。

创建基表table_trigger1

createtabletable_trigger1(

Id 1字符(10),-id 1,唯一

名称1字符(20),-名称

主键(ID1)-基表必须有一个键,否则不可能通过监视表来知道已经操作了哪一行数据。

)

创建监控表

createtabletable_trigger2(

Id2char (10),-id2对应操作基表的id1,其中id2不能设置为主键,因为基表的某一行可以多次操作。

Kindvarchar (1),-type,I表示插入,U表示更新,D和D表示删除

时间2日期时间年分数(5)-时间,指示操作发生的时间

)

创建3个触发器:

插入触发器

创建触发器触发器_插入-创建触发器_插入触发器

Insertontable_trigger1 -在基表table_trigger1中创建一个插入触发器事件

referencing new new-定义稍后使用的新

Foreachrow -使用引用语句的先决条件,必须添加

插入table_trigger2 (id2,kind,time 2)//将数据插入监控表table_trigger2

价值观(新。id1,‘I’,current)//current表示触发的时间

);

更新触发器

createtriggertrigger_update

updatecontable _ trigger 1

引用旧文件夹

foreachrow

insertintotable_trigger2(id2,种类,时间2)

值(旧. id1,“U”,当前)

);

删除触发器

createtriggertrigger_delete

deleteontable_trigger1

引用旧文件夹

foreachrow

insertintotable_trigger2(id2,种类,时间2)

值(旧. id1,“D”,当前)

);

测试:

执行以下四条sql语句

insertintotable _ trigger 1 values(' 1 ',' name 1 ');

insertintotable _ trigger 1 values(' 2 ',' name ');

updatetable _ trigger 1 set name 1=' Newname 1 '其中=' 1

delete table _ trigger 1 where id 1=' 2 ';

监控表table_trigger2中的数据:

id2kindtime2

1I发生时间

2I发生时间

1U出现时间

2D出现时间

通过监视表,可以详细了解table_trigger1的数据变化

版权声明:Informix触发器 创建插入、更新和删除触发器示例是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。