| 列名 | 列类型 | 列约束 | 表约束 |
|---|---|---|---|
| trigger_id | UNSIGNED INT | NOT NULL | 主键。 |
| table_id | UNSIGNED INT | NOT NULL | 外键引用 SYSTABLE.table_id。 |
| event | CHAR(1) | NOT NULL | 唯一。 |
| trigger_time | CHAR(1) | NOT NULL | 唯一。 |
| trigger_order | SMALLINT | 唯一。 | |
| foreign_table_id | UNSIGNED INT | 唯一。外键引用 SYSFOREIGNKEY。 | |
| foreign_key_id | SMALLINT | 唯一。外键引用 SYSFOREIGNKEY。 | |
| referential_action | CHAR(1) | ||
| trigger_name | CHAR(128) | 唯一。 | |
| trigger_defn | LONG VARCHAR | NOT NULL | |
| remarks | LONG VARCHAR | ||
| source | LONG VARCHAR |
数据库中的每个触发器在 SYSTRIGGER 中都有一行描述。该表还包含自动为外键定义创建的触发器,它们有参照触发动作(如 ON DELETE CASCADE)。
trigger_id 每个触发器都有一个指定的唯一编号(trigger number),此编号为 SYSTRIGGER 的主键。
table_id 表号将唯一标识该触发器所属的表。
event 导致触发器触发的事件。该单字符值对应于创建触发器时指定的触发器事件。
A INSERT, DELETE
B INSERT, UPDATE
C UPDATE
D DELETE
E DELETE, UPDATE
I INSERT
U UPDATE
M INSERT, DELETE, UPDATE
trigger_time 触发器的触发时间。该单字符值对应于创建触发器时指定的触发器时间。
A AFTER
B BEFORE
trigger_order 触发器的触发顺序。这决定了当有相同类型(INSERT、UPDATE 或 DELETE)的触发器同时(BEFORE 或者 AFTER)触发时触发器的触发顺序。
foreign_table_id 包含外键定义的表的表号,它有一个参照触发动作(如 ON DELETE CASCADE)。
foreign_key_id foreign_table_id 所引用表的外键的外键号。
referential_action 外键所定义的动作。该单字符值对应于创建外键时指定的动作。
C CASCADE
D SET DEFAULT
N SET NULL
R RESTRICT
trigger_name 触发器的名称。一个表中不能有两个同名的触发器。
trigger_defn 用于创建触发器的命令。
remarks 注释字符串。
source 如果 preserve_source_format 选项为 ON,则此列包含触发器的原始溯源。它用于保持原文本的外观。有关详细信息,请参见 PRESERVE_SOURCE_FORMAT 选项 [database]。
SQL Anywhere Studio 9.0.2
版权所有 © 1989–2005 Sybase, Inc. 部分版权所有 © 2001–2005 iAnywhere Solutions, Inc. 保留所有权利。