WEB开发网
开发学院数据库DB2 DB2 9.5 SQL Procedure Developer 认证考试 735 准... 阅读

DB2 9.5 SQL Procedure Developer 认证考试 735 准备,第4部分:触发器

 2010-02-18 15:01:13 来源:WEB开发网   
核心提示:创建触发器所需的权限使用触发器的模式 ID 必须拥有以下权限之一:对定义 BEFORE或AFTER触发器的表拥有ALTER 权限对定义 INSTEAD OF触发器的视图拥有CONTROL 权限对定义 INSTEAD OF触发器的视图拥有所有权对定义触发器的表或视图的模式拥有ALTERIN 权限SYSADM或DBADM

创建触发器所需的权限

使用触发器的模式 ID 必须拥有以下权限之一:

对定义 BEFORE或AFTER触发器的表拥有ALTER 权限

对定义 INSTEAD OF触发器的视图拥有CONTROL 权限

对定义 INSTEAD OF触发器的视图拥有所有权

对定义触发器的表或视图的模式拥有ALTERIN 权限

SYSADM或DBADM 授权

以及以下任意一种权限:

IMPLICIT_SCHEMA数据库授权(如果触发器的隐式或显式模式名称不存在)

对模式的CREATEIN 权限(如果触发器的模式名称引用现有的模式)

假定授权 ID 没有SYSADM和DBADM 权限并且触发器存在,此 ID 必须拥有以下所有权限:

对定义触发器的表拥有SELECT 权限 — 用于转换变量和/或表

对在触发的操作条件中引用的任意表或视图的SELECT 权限

调用触发的指定 SQL语句所需的权限

注:拥有仅创建触发器的SYSADM 权限的ID 也被显式授予 DBADM 权限。

创建触发器语句

如果创建者拥有所需的权限集,则可以使用SQL 动态创建触发器,也可以嵌入到应用程序中。有关 CREATE TRIGGER 授权的详细信息,请参阅 DB2 9.5 Linux, UNIX, and Windows Information Center中有关 “Create Trigger”语句的内容。清单 1将向您展示用于创建触发器的基本语法:

清单 1. CREATE TRIGGER语句的一般语法图.-NO CASCADE-. 
>>-CREATE TRIGGER--trigger-name--+-+------------+--BEFORE-+----->
                 +-AFTER------------------+
                 '-INSTEAD OF-------------'

>--+-INSERT--------------------------+--ON--+-table-name-+------>
  +-DELETE--------------------------+   '-view-name--'
  '-UPDATE--+---------------------+-'
       |   .-,-----------. |
       |   V       | |
       '-OF----column-name-+-'

>--+------------------------------------------------------------------+-->
  |       .-------------------------------------------------. |
  |       V (1)  (2)     .-AS-.           | |
  '-REFERENCING------------------+-OLD--+----+--correlation-name-+-+-'
                 |   .-AS-.          |
                 +-NEW--+----+--correlation-name-+
                 |      .-AS-.       |
                 +-OLD TABLE--+----+--identifier-+
                 |      .-AS-.       |
                 '-NEW TABLE--+----+--identifier-'

>--+-FOR EACH ROW--------------+--| triggered-action |--------->
  | (3)           |
  '--------FOR EACH STATEMENT-'

triggered-action

|--+-------------------------------------+---------------------->
  | (4)                |
  '--------WHEN--(--search-condition--)-'

为了理解 清单 1中的语法图,让我们创建几个演示 CREATE TRIGGER语句的基本语法的简单触发器。触发器有三个主要组件:

触发器事件

触发器条件

触发器操作

上一页  1 2 3 4  下一页

Tags:DB SQL Procedure

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接