Skip site navigation (1) Skip section navigation (2)

pgsql/ oc/src/sgml/ref/alter_table.sgml rc/bac ...

From: "Marc G(dot) Fournier" <scrappy(at)hub(dot)org>
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql/ oc/src/sgml/ref/alter_table.sgml rc/bac ...
Date: 2001-09-07 21:57:54
Message-ID: 200109072157.f87Lvsp78312@hub.org (view raw or flat)
Thread:
Lists: pgsql-committers
CVSROOT:	/home/projects/pgsql/cvsroot
Module name:	pgsql
Changes by:	scrappy(at)hub(dot)org	01/09/07 17:57:53

Modified files:
	doc/src/sgml/ref: alter_table.sgml 
	src/backend/commands: command.c 
	src/backend/parser: analyze.c 
	src/include/parser: analyze.h 

Log message:
	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


pgsql-committers by date

Next:From: Marc G. FournierDate: 2001-09-07 22:02:32
Subject: pgsql/ oc/src/sgml/libpq.sgml rc/interfaces/li ...
Previous:From: Marc G. FournierDate: 2001-09-07 21:55:00
Subject: pgsql/src/interfaces/libpgtcl pgtclId.c

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group