PostgreSQL 8.2.3 Documentation
Prev | Fast Backward |  | Fast Forward | Next

# CREATE CONSTRAINT TRIGGER

## Name

CREATE CONSTRAINT TRIGGER -- define a new constraint trigger

## Synopsis

    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 )

## Description

`CREATE CONSTRAINT TRIGGER` is used within `CREATE TABLE`/`ALTER TABLE` and by pg_dump to create the special triggers for referential integrity. It is not intended for general use.

## Parameters

`name`

  The name of the constraint trigger. The actual name of the created trigger will be of the form `RI_ConstraintTrigger_0000` (where 0000 is some number assigned by the server). Use this assigned name when dropping the trigger.

`event`

  One of `INSERT`, `UPDATE`, or `DELETE`; this specifies the event that will fire the trigger. Multiple events can be specified using `OR`.

`table_name`

  The (possibly schema-qualified) name of the table in which the triggering events occur.

`referenced_table_name`

  The (possibly schema-qualified) name of the table referenced by the constraint. Used by foreign key constraints triggers.

`DEFERRABLE`
`NOT DEFERRABLE`
`INITIALLY IMMEDIATE`
`INITIALLY DEFERRED`

  See the CREATE TABLE documentation for details of these constraint options.

`funcname`(`args`)

  The function to call as part of the trigger processing. See CREATE TRIGGER for details.

## Compatibility

`CREATE CONTRAINT TRIGGER` is a PostgreSQL extension of the SQL standard.

Prev | Home | Next
CREATE CAST | Up | CREATE CONVERSION