aboutsummaryrefslogtreecommitdiff
path: root/src/include/catalog/pg_constraint.h
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2004-06-10 17:56:03 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2004-06-10 17:56:03 +0000
commit45616f5bbbb87745e0e82b00e77562d6502aa042 (patch)
tree18d24d180f5c0c954268e64f5b6fe62922fc106e /src/include/catalog/pg_constraint.h
parent75db5a665fac305ac0170f49f39c1b01d026e8d3 (diff)
downloadpostgresql-45616f5bbbb87745e0e82b00e77562d6502aa042.tar.gz
postgresql-45616f5bbbb87745e0e82b00e77562d6502aa042.zip
Clean up generation of default names for constraints, indexes, and serial
sequences, as per recent discussion. All these names are now of the form table_column_type, with digits added if needed to make them unique. Default constraint names are chosen to be unique across their whole schema, not just within the parent object, so as to be more SQL-spec-compatible and make the information schema views more useful.
Diffstat (limited to 'src/include/catalog/pg_constraint.h')
-rw-r--r--src/include/catalog/pg_constraint.h21
1 files changed, 10 insertions, 11 deletions
diff --git a/src/include/catalog/pg_constraint.h b/src/include/catalog/pg_constraint.h
index fe836010ecf..245b999205c 100644
--- a/src/include/catalog/pg_constraint.h
+++ b/src/include/catalog/pg_constraint.h
@@ -8,7 +8,7 @@
* Portions Copyright (c) 1996-2003, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $PostgreSQL: pgsql/src/include/catalog/pg_constraint.h,v 1.10 2003/11/29 22:40:58 pgsql Exp $
+ * $PostgreSQL: pgsql/src/include/catalog/pg_constraint.h,v 1.11 2004/06/10 17:55:59 tgl Exp $
*
* NOTES
* the genbki.sh script reads this file and generates .bki
@@ -141,15 +141,14 @@ typedef FormData_pg_constraint *Form_pg_constraint;
*/
/*
- * Used for constraint support functions where the
- * and conrelid, contypid columns being looked up
+ * Identify constraint type for lookup purposes
*/
-typedef enum CONSTRAINTCATEGORY
+typedef enum ConstraintCategory
{
CONSTRAINT_RELATION,
CONSTRAINT_DOMAIN,
- CONSTRAINT_ASSERTION
-} CONSTRAINTCATEGORY;
+ CONSTRAINT_ASSERTION /* for future expansion */
+} ConstraintCategory;
/*
* prototypes for functions in pg_constraint.c
@@ -176,10 +175,10 @@ extern Oid CreateConstraintEntry(const char *constraintName,
extern void RemoveConstraintById(Oid conId);
-extern bool ConstraintNameIsUsed(CONSTRAINTCATEGORY conCat, Oid objId, Oid objNamespace,
- const char *cname);
-extern char *GenerateConstraintName(CONSTRAINTCATEGORY conCat, Oid objId, Oid objNamespace,
- int *counter);
-extern bool ConstraintNameIsGenerated(const char *cname);
+extern bool ConstraintNameIsUsed(ConstraintCategory conCat, Oid objId,
+ Oid objNamespace, const char *conname);
+extern char *ChooseConstraintName(const char *name1, const char *name2,
+ const char *label, Oid namespace,
+ List *others);
#endif /* PG_CONSTRAINT_H */