diff options
Diffstat (limited to 'src/include/catalog/pg_constraint_fn.h')
-rw-r--r-- | src/include/catalog/pg_constraint_fn.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/include/catalog/pg_constraint_fn.h b/src/include/catalog/pg_constraint_fn.h index 06a2362003e..0170e08c450 100644 --- a/src/include/catalog/pg_constraint_fn.h +++ b/src/include/catalog/pg_constraint_fn.h @@ -27,6 +27,19 @@ typedef enum ConstraintCategory CONSTRAINT_ASSERTION /* for future expansion */ } ConstraintCategory; +/* + * Used when cloning a foreign key constraint to a partition, so that the + * caller can optionally set up a verification pass for it. + */ +typedef struct ClonedConstraint +{ + Oid relid; + Oid refrelid; + Oid conindid; + Oid conid; + Constraint *constraint; +} ClonedConstraint; + extern Oid CreateConstraintEntry(const char *constraintName, Oid constraintNamespace, char constraintType, @@ -57,6 +70,9 @@ extern Oid CreateConstraintEntry(const char *constraintName, bool conNoInherit, bool is_internal); +extern void CloneForeignKeyConstraints(Oid parentId, Oid relationId, + List **cloned); + extern void RemoveConstraintById(Oid conId); extern void RenameConstraintById(Oid conId, const char *newname); |