summaryrefslogtreecommitdiff
path: root/src/include
diff options
context:
space:
mode:
authorJan Wieck1999-09-30 14:54:24 +0000
committerJan Wieck1999-09-30 14:54:24 +0000
commitccecf1fa460a934bf5d4ebaa4ef8568735cc82e0 (patch)
tree1d75be688460a1e0e0b92015f2421a8df4d144bb /src/include
parentdaaeafd9e1d85973695572425036dbb8c6175242 (diff)
Added utils/adt/ri_triggers with empty shells for the
FOREIGN KEY triggers. Added pg_proc entries for all the new functions. Jan
Diffstat (limited to 'src/include')
-rw-r--r--src/include/catalog/pg_proc.h24
-rw-r--r--src/include/utils/builtins.h14
2 files changed, 36 insertions, 2 deletions
diff --git a/src/include/catalog/pg_proc.h b/src/include/catalog/pg_proc.h
index 1f560064e6c..24e74f0e624 100644
--- a/src/include/catalog/pg_proc.h
+++ b/src/include/catalog/pg_proc.h
@@ -6,7 +6,7 @@
*
* Copyright (c) 1994, Regents of the University of California
*
- * $Id: pg_proc.h,v 1.103 1999/09/29 21:13:30 wieck Exp $
+ * $Id: pg_proc.h,v 1.104 1999/09/30 14:54:23 wieck Exp $
*
* NOTES
* The script catalog/genbki.sh reads this file and generates .bki
@@ -2112,6 +2112,28 @@ DESCR("user name by UID (with fallback)");
DATA(insert OID = 1643 ( pg_get_indexdef PGUID 11 f t f 1 f 25 "26" 100 0 0 100 pg_get_indexdef - ));
DESCR("index description");
+/* Generic referential integrity constraint triggers */
+DATA(insert OID = 1644 ( RI_FKey_check_ins PGUID 11 f t f 0 f 0 "" 100 0 0 100 RI_FKey_check_ins - ));
+DESCR("referential integrity FOREIGN KEY ... REFERENCES");
+DATA(insert OID = 1645 ( RI_FKey_check_upd PGUID 11 f t f 0 f 0 "" 100 0 0 100 RI_FKey_check_upd - ));
+DESCR("referential integrity FOREIGN KEY ... REFERENCES");
+DATA(insert OID = 1646 ( RI_FKey_cascade_del PGUID 11 f t f 0 f 0 "" 100 0 0 100 RI_FKey_cascade_del - ));
+DESCR("referential integrity ON DELETE CASCADE");
+DATA(insert OID = 1647 ( RI_FKey_cascade_upd PGUID 11 f t f 0 f 0 "" 100 0 0 100 RI_FKey_cascade_upd - ));
+DESCR("referential integrity ON UPDATE CASCADE");
+DATA(insert OID = 1648 ( RI_FKey_restrict_del PGUID 11 f t f 0 f 0 "" 100 0 0 100 RI_FKey_restrict_del - ));
+DESCR("referential integrity ON DELETE RESTRICT");
+DATA(insert OID = 1649 ( RI_FKey_restrict_upd PGUID 11 f t f 0 f 0 "" 100 0 0 100 RI_FKey_restrict_upd - ));
+DESCR("referential integrity ON UPDATE RESTRICT");
+DATA(insert OID = 1650 ( RI_FKey_setnull_del PGUID 11 f t f 0 f 0 "" 100 0 0 100 RI_FKey_setnull_del - ));
+DESCR("referential integrity ON DELETE SET NULL");
+DATA(insert OID = 1651 ( RI_FKey_setnull_upd PGUID 11 f t f 0 f 0 "" 100 0 0 100 RI_FKey_setnull_upd - ));
+DESCR("referential integrity ON UPDATE SET NULL");
+DATA(insert OID = 1652 ( RI_FKey_setdefault_del PGUID 11 f t f 0 f 0 "" 100 0 0 100 RI_FKey_setdefault_del - ));
+DESCR("referential integrity ON DELETE SET DEFAULT");
+DATA(insert OID = 1653 ( RI_FKey_setdefault_upd PGUID 11 f t f 0 f 0 "" 100 0 0 100 RI_FKey_setdefault_upd - ));
+DESCR("referential integrity ON UPDATE SET DEFAULT");
+
/* for mac type support */
DATA(insert OID = 436 ( macaddr_in PGUID 11 f t t 1 f 829 "0" 100 0 0 100 macaddr_in - ));
DESCR("(internal)");
diff --git a/src/include/utils/builtins.h b/src/include/utils/builtins.h
index b0bd050e9bc..f1c7a25f9dd 100644
--- a/src/include/utils/builtins.h
+++ b/src/include/utils/builtins.h
@@ -6,7 +6,7 @@
*
* Copyright (c) 1994, Regents of the University of California
*
- * $Id: builtins.h,v 1.86 1999/09/29 21:13:31 wieck Exp $
+ * $Id: builtins.h,v 1.87 1999/09/30 14:54:24 wieck Exp $
*
* NOTES
* This should normally only be included by fmgr.h.
@@ -30,6 +30,7 @@
#include "utils/int8.h"
#include "utils/nabstime.h"
#include "utils/numeric.h"
+#include "access/heapam.h" /* for HeapTuple */
/*
* Defined in adt/
@@ -600,5 +601,16 @@ float32 numeric_float4(Numeric num);
Numeric float8_numeric(float64 val);
float64 numeric_float8(Numeric num);
+/* ri_triggers.c */
+HeapTuple RI_FKey_check_ins(FmgrInfo *proinfo);
+HeapTuple RI_FKey_check_upd(FmgrInfo *proinfo);
+HeapTuple RI_FKey_cascade_del(FmgrInfo *proinfo);
+HeapTuple RI_FKey_cascade_upd(FmgrInfo *proinfo);
+HeapTuple RI_FKey_restrict_del(FmgrInfo *proinfo);
+HeapTuple RI_FKey_restrict_upd(FmgrInfo *proinfo);
+HeapTuple RI_FKey_setnull_del(FmgrInfo *proinfo);
+HeapTuple RI_FKey_setnull_upd(FmgrInfo *proinfo);
+HeapTuple RI_FKey_setdefault_del(FmgrInfo *proinfo);
+HeapTuple RI_FKey_setdefault_upd(FmgrInfo *proinfo);
#endif /* BUILTINS_H */