postgresql/src/include/parser
Bruce Momjian bd9b32803b Here is my much-promised patch to let people add UNIQUE constraints after
table creation time.  Big deal you say - but this patch is the basis of the
next thing which is adding PRIMARY KEYs after table creation time.  (Which
is currently impossible without twiddling catalogs)

Rundown
-------

* I have made the makeObjectName function of analyze.c non-static, and
exported it in analyze.h

* I have included analyze.h and defrem.h into command.c, to support
makingObjectNames and creating indices

* I removed the 'case CONSTR_PRIMARY' clause so that it properly fails and
says you can't add primary keys, rather than just doing nothing and
reporting nothing!!!

* I have modified the docs.

Algorithm
---------

* If name specified is null, search for a new valid constraint name.  I'm
not sure if I should "lock" my generated name somehow tho - should I open
the relation before doing this step?

* Open relation in access exclusive mode

* Check that the constraint does not already exist

* Define the new index

* Warn if they're doubling up on an existing index

Christopher Kings-Lynne
2001-09-07 21:57:53 +00:00
..
analyze.h Here is my much-promised patch to let people add UNIQUE constraints after 2001-09-07 21:57:53 +00:00
gramparse.h plpgsql's private copy of xlateSqlType was out of sync. Again. This 2001-02-09 03:26:28 +00:00
keywords.h Change Copyright from PostgreSQL, Inc to PostgreSQL Global Development Group. 2001-01-24 19:43:33 +00:00
parse_agg.h Change Copyright from PostgreSQL, Inc to PostgreSQL Global Development Group. 2001-01-24 19:43:33 +00:00
parse_clause.h pgindent run. Make it all clean. 2001-03-22 04:01:46 +00:00
parse_coerce.h Back out BYTEA binary compatibility changes. 2001-06-24 02:41:21 +00:00
parse_expr.h Change Copyright from PostgreSQL, Inc to PostgreSQL Global Development Group. 2001-01-24 19:43:33 +00:00
parse_func.h New comment. This func/column things has always confused me. 2001-05-19 00:33:20 +00:00
parse_node.h pgindent run. Make it all clean. 2001-03-22 04:01:46 +00:00
parse_oper.h pgindent run. Make it all clean. 2001-03-22 04:01:46 +00:00
parse_relation.h Make OIDs optional, per discussions in pghackers. WITH OIDS is still the 2001-08-10 18:57:42 +00:00
parse_target.h Change Copyright from PostgreSQL, Inc to PostgreSQL Global Development Group. 2001-01-24 19:43:33 +00:00
parse_type.h Change Copyright from PostgreSQL, Inc to PostgreSQL Global Development Group. 2001-01-24 19:43:33 +00:00
parser.h Change Copyright from PostgreSQL, Inc to PostgreSQL Global Development Group. 2001-01-24 19:43:33 +00:00
parsetree.h Change Copyright from PostgreSQL, Inc to PostgreSQL Global Development Group. 2001-01-24 19:43:33 +00:00
scansup.h Change Copyright from PostgreSQL, Inc to PostgreSQL Global Development Group. 2001-01-24 19:43:33 +00:00