informix的触发器的使用
来源:互联网 发布:ubuntu开启ssh远程登录 编辑:程序博客网 时间:2024/06/09 21:42
学习informix的触发器的使用:
生成触发器:
触发器的大组件:
触发器事件 定义激活触发器的事件。触发器事件包括INSERT、UPDATE与DELETE
定时条件 定义触发器何时执行。它可以在触发器事件执行之前(BEFORE)执行,也可以在触发器事件执行之后(AFTER)执行或在触发器事件执行过程中(FOR EACH ROW)执行。
触发器操作 定义激活触发器时执行的SQL语句,包括INSERT,DELETE,UPDATE与EXECUTE PROCEDURE
生成触发器:
触发器的大组件:
触发器事件 定义激活触发器的事件。触发器事件包括INSERT、UPDATE与DELETE
定时条件 定义触发器何时执行。它可以在触发器事件执行之前(BEFORE)执行,也可以在触发器事件执行之后(AFTER)执行或在触发器事件执行过程中(FOR EACH ROW)执行。
触发器操作 定义激活触发器时执行的SQL语句,包括INSERT,DELETE,UPDATE与EXECUTE PROCEDURE
INSERT触发器的语法如下:
CREATE TRIGGER trigger_name INSERT ON table_name
BEFORE [WHEN (condition)] (trig_action1,trig_action2,...)|
FOR EACH ROW [WHEN (condition)] (trig_action1,trig_action2,...)|
AFTER [WHEN (condition)] (trig_action1,trig_action2,...)|
[DISABLED|ENABLED]
or
CREATE TRIGGER trigger_name INSERT ON table_name
REFERENCING NEW AS correlation_name
FOR EACH ROW [WHEN (condition)] (trig_action1,trig_action2,...)
[BEFORE [WHEN (conditon)](trig_action3,trig_action4,...)]|
[AFTER [WHEN (conditon)] (trig_action3,trig_action4,...)]
[DISABLED|ENABLED]
CREATE TRIGGER trigger_name INSERT ON table_name
BEFORE [WHEN (condition)] (trig_action1,trig_action2,...)|
FOR EACH ROW [WHEN (condition)] (trig_action1,trig_action2,...)|
AFTER [WHEN (condition)] (trig_action1,trig_action2,...)|
[DISABLED|ENABLED]
or
CREATE TRIGGER trigger_name INSERT ON table_name
REFERENCING NEW AS correlation_name
FOR EACH ROW [WHEN (condition)] (trig_action1,trig_action2,...)
[BEFORE [WHEN (conditon)](trig_action3,trig_action4,...)]|
[AFTER [WHEN (conditon)] (trig_action3,trig_action4,...)]
[DISABLED|ENABLED]
DELET触发器的语法如下:
CREATE TRIGGER trigger_name DELETE ON table_name
BEFORE [WHEN (condition)] (trig_action1,trig_action2,...)|
FOR EACH ROW [WHEN (condition)] (trig_action1,trig_action2,...)|
AFTER [WHEN (condition)] (trig_action1,trig_action2,...)|
[DISABLED|ENABLED]
or
CREATE TRIGGER trigger_name DELETE ON table_name
REFERENCING NEW AS correlation_name
FOR EACH ROW [WHEN (condition)] (trig_action1,trig_action2,...)
[BEFORE [WHEN (conditon)](trig_action3,trig_action4,...)]|
[AFTER [WHEN (conditon)] (trig_action3,trig_action4,...)]
[DISABLED|ENABLED]
BEFORE [WHEN (condition)] (trig_action1,trig_action2,...)|
FOR EACH ROW [WHEN (condition)] (trig_action1,trig_action2,...)|
AFTER [WHEN (condition)] (trig_action1,trig_action2,...)|
[DISABLED|ENABLED]
or
CREATE TRIGGER trigger_name DELETE ON table_name
REFERENCING NEW AS correlation_name
FOR EACH ROW [WHEN (condition)] (trig_action1,trig_action2,...)
[BEFORE [WHEN (conditon)](trig_action3,trig_action4,...)]|
[AFTER [WHEN (conditon)] (trig_action3,trig_action4,...)]
[DISABLED|ENABLED]
UPDATE触发器的语法如下
CREATE TRIGGER trigger_name UPDATE [OF (column,column,...)] ON table_name
BEFORE [WHEN (condition)] (trig_action1,trig_action2,...)|
FOR EACH ROW [WHEN (condition)] (trig_action1,trig_action2,...)|
AFTER [WHEN (condition)] (trig_action1,trig_action2,...)|
[DISABLED|ENABLED]
or
CREATE TRIGGER trigger_name UPDATE [OF (column,column,...)] ON table_name
REFERENCING NEW AS correlation_name OLD AS correlation_name
FOR EACH ROW [WHEN (condition)] (trig_action1,trig_action2,...)
[BEFORE [WHEN (conditon)](trig_action3,trig_action4,...)]|
[AFTER [WHEN (conditon)] (trig_action3,trig_action4,...)]
[DISABLED|ENABLED]
CREATE TRIGGER trigger_name UPDATE [OF (column,column,...)] ON table_name
BEFORE [WHEN (condition)] (trig_action1,trig_action2,...)|
FOR EACH ROW [WHEN (condition)] (trig_action1,trig_action2,...)|
AFTER [WHEN (condition)] (trig_action1,trig_action2,...)|
[DISABLED|ENABLED]
or
CREATE TRIGGER trigger_name UPDATE [OF (column,column,...)] ON table_name
REFERENCING NEW AS correlation_name OLD AS correlation_name
FOR EACH ROW [WHEN (condition)] (trig_action1,trig_action2,...)
[BEFORE [WHEN (conditon)](trig_action3,trig_action4,...)]|
[AFTER [WHEN (conditon)] (trig_action3,trig_action4,...)]
[DISABLED|ENABLED]
要了解触发器的语法,就要将其分解如下:
CREATE TRIGGER 生成触发器对象所需的语句。
trigger_name 用户定义的触发器名,在数据库中唯一,不超过18个字符,以字母开始。
INSERT是一个触发器事件,表中插入行时触发器被激活,一个表只有一个INSERT触发器,
DELETE是一个触发器事件,表中删除行时触发器被激活,一个表只有一个DELETE触发器。
UPDATE是一个触发器事件,表中根性列时触发器被激活,如果包括列清单,则更新列清单中的列时触发器被激活。否则更形表中任何列时触发器被激活,一个表可以有多个UPDATE触发器。但是列清单要相互排斥。
ENABLED指定启动触发器,即执行触发器事件时即激活触发器。这是生成触发器时的默认值。
DISABLED指定生成但关闭触发器,即执行触发器事件时不激活触发器。
trigger_name 用户定义的触发器名,在数据库中唯一,不超过18个字符,以字母开始。
INSERT是一个触发器事件,表中插入行时触发器被激活,一个表只有一个INSERT触发器,
DELETE是一个触发器事件,表中删除行时触发器被激活,一个表只有一个DELETE触发器。
UPDATE是一个触发器事件,表中根性列时触发器被激活,如果包括列清单,则更新列清单中的列时触发器被激活。否则更形表中任何列时触发器被激活,一个表可以有多个UPDATE触发器。但是列清单要相互排斥。
ENABLED指定启动触发器,即执行触发器事件时即激活触发器。这是生成触发器时的默认值。
DISABLED指定生成但关闭触发器,即执行触发器事件时不激活触发器。
- informix的触发器的使用
- Informix的触发器的使用
- informix中onpladm的使用
- informix中onpladm的使用
- Informix SQL 的使用技巧
- informix的DBAccess工具使用
- informix中sqlda的使用
- informix的DBAccess工具使用
- Informix使用建议--一些常用的 informix命令!
- INFORMIX-SQL的一些使用技巧
- 使用 Informix Dynamic Server 的复制技术
- 使用 Informix Dynamic Server 的复制技术
- Informix数据库的使用与优化
- 替代触发器的使用
- MySQL触发器的使用
- MySQL触发器的使用
- 触发器的简单使用
- 使用游标的触发器
- 数组循环移位
- 又一个潜规则
- xna gui
- 矩阵基本操作的实现(C# 源代码)
- .NET代码执行效率优化
- informix的触发器的使用
- web开发乱码问题
- 新手
- C#中 const 和 readonly 的区别
- 在ubuntu下安装wine
- return 语句在函数之外 错误解决方法
- 理解 Control.invoke() 和Control.invokeRequired()
- 2009-04-03技术学习:wicket框架中DatePicker使用
- LIBCMT.LIB(crt0.obj) : error LNK2001: unresolved external symbol _main错误的解决