↑↓ 选择 ↵ 打开 ⌫ 改范围 完整检索页

pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 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 已于 2011 年 12 月结束社区维护,本页译文保留供仍在使用旧版本的读者参考。新系统请看当前版本手册首页。

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标准的一个扩展。

提交更正

译文有误、术语不当或页面显示问题,请到译文仓库 pgsty/pgdoc 报告译文问题。 英文原文本身的问题,请在当前版本的对应页面向上游反馈;上游不再修订已结束维护的版本。