diff options
Diffstat (limited to 'src/include/commands/trigger.h')
-rw-r--r-- | src/include/commands/trigger.h | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/src/include/commands/trigger.h b/src/include/commands/trigger.h index c0399cbf105..eae66cccaab 100644 --- a/src/include/commands/trigger.h +++ b/src/include/commands/trigger.h @@ -6,7 +6,7 @@ * Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $Id: trigger.h,v 1.30 2001/11/05 17:46:33 momjian Exp $ + * $Id: trigger.h,v 1.31 2001/11/12 00:46:36 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -78,6 +78,25 @@ typedef struct TriggerData #define TRIGGER_FIRED_AFTER(event) \ (!TRIGGER_FIRED_BEFORE (event)) +/* + * RI trigger function arguments are stored in pg_trigger.tgargs bytea + * + * constrname\0fkrel\0pkrel\0matchtype\0fkatt\0pkatt\0fkatt\0pkatt\0... + * + * There are one or more pairs of fkatt/pkatt names. + */ +#define RI_CONSTRAINT_NAME_ARGNO 0 +#define RI_FK_RELNAME_ARGNO 1 +#define RI_PK_RELNAME_ARGNO 2 +#define RI_MATCH_TYPE_ARGNO 3 +#define RI_FIRST_ATTNAME_ARGNO 4 /* first attname pair starts here */ + +#define RI_KEYPAIR_FK_IDX 0 +#define RI_KEYPAIR_PK_IDX 1 + +#define RI_MAX_NUMKEYS INDEX_MAX_KEYS +#define RI_MAX_ARGUMENTS (RI_FIRST_ATTNAME_ARGNO + (RI_MAX_NUMKEYS * 2)) + extern void CreateTrigger(CreateTrigStmt *stmt); extern void DropTrigger(DropTrigStmt *stmt); |