↑↓ 选择↵ 打开⌫ 切换范围完整搜索

PG.CENTER 连接 PostgreSQL 文档、百科与生态知识。由 Pigsty 维护。

已结束支持的版本: 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4 / 7.3 / 7.2 / 7.1 / 7.0
历史版本。 PostgreSQL 8.2 已结束支持。 请参阅 当前版本手册.

CREATE CONSTRAINT TRIGGER

CREATE CONSTRAINT TRIGGER — 定义一个新的约束触发器

大纲

CREATE CONSTRAINT TRIGGER name
    AFTER event [ OR ... ]
    ON table_name
    [ FROM referenced_table_name ]
    { NOT DEFERRABLE | [ DEFERRABLE ] { INITIALLY IMMEDIATE | INITIALLY DEFERRED } }
    FOR EACH ROW
    EXECUTE PROCEDURE funcname ( arguments )

描述

CREATE CONSTRAINT TRIGGER被CREATE TABLE/ALTER TABLE以及pg_dump用来创建用于引用完整性的特殊触发器。它并不打算供一般用途使用。

参数

name

约束触发器的名称。所创建触发器的实际名称将形如 RI_ConstraintTrigger_0000(其中 0000 是由服务器分配的某个编号)。删除触发器时请使用这个分配的名称。

event

INSERT、UPDATE或DELETE之一;它指定将引发该触发器的事件。可以使用OR指定多个事件。

table_name

触发事件发生的表(可能是模式限定的)的名称。

referenced_table_name

被该约束引用的表(可能是模式限定的)的名称。被外键约束触发器使用。

DEFERRABLE
NOT DEFERRABLE
INITIALLY IMMEDIATE
INITIALLY DEFERRED

这些约束选项的细节见CREATE TABLE的文档。

funcname(args)

作为触发器处理的一部分来调用的函数。详见CREATE TRIGGER。

兼容性

CREATE CONSTRAINT TRIGGER是PostgreSQL对SQL标准的一个扩展。

报告文档问题

阅读 上游文档. 反馈更正前请先核对 当前版本手册.