Re: [SQL] An easy question about creating a primary key - Mailing list pgsql-hackers

From Christopher Kings-Lynne
Subject Re: [SQL] An easy question about creating a primary key
Date
Msg-id GNELIHDDFBOCMGBFGEFOGEKHCAAA.chriskl@familyhealth.com.au
Whole thread Raw
In response to Re: [SQL] An easy question about creating a primary key  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
You know, that would explain a lot.  Since this was only done in October, I
wouldn't have noticed it.  And it explains why I couldn't get various
changes in my code to actually have any effect...

Oh well, it was a fun coding exercise ;)  Feel free to remove the ADD UNIQUE
stuff from command.c to see if the parser will handle it.  However, your
commit message also just implies that all you fixed was ADD PRIMARY KEY???

Chris

> -----Original Message-----
> From: Tom Lane [mailto:tgl@sss.pgh.pa.us]
> Sent: Tuesday, 4 December 2001 10:40 AM
> To: Christopher Kings-Lynne
> Cc: Ligia Pimentel; Hackers
> Subject: Re: [SQL] An easy question about creating a primary key
>
>
> Now that I look at it, I think I made the relevant changes in the
> parser:
>
> 2001-10-11 20:07  tgl
>
>     * doc/src/sgml/ref/alter_table.sgml, src/backend/catalog/pg_type.c,
>     src/backend/commands/command.c, src/backend/parser/analyze.c,
>     src/backend/tcop/utility.c, src/include/commands/command.h,
>     src/include/nodes/parsenodes.h,
>     src/test/regress/expected/alter_table.out,
>     src/test/regress/expected/foreign_key.out: Break
>     transformCreateStmt() into multiple routines and make
>     transformAlterStmt() use these routines, instead of having lots of
>     duplicate (not to mention should-have-been-duplicate) code.  Adding
>     a column with a CHECK constraint actually works now, and the tests
>     to reject unsupported DEFAULT and NOT NULL clauses actually fire
>     now.  ALTER TABLE ADD PRIMARY KEY works, modulo having to have
>     created the column(s) NOT NULL already.
>
> I was mainly interested in eliminating the inconsistencies in parse-time
> handling of CREATE TABLE and ALTER TABLE, and the ensuing bugs mentioned
> in the commit log.  I didn't think much about the possibility that I was
> obsoleting stuff in command.c, but maybe I did.
>
>             regards, tom lane
>



pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: [SQL] An easy question about creating a primary key
Next
From: Tom Lane
Date:
Subject: Re: FW: [CYGWIN] 7.2b3 postmaster doesn't start on Win98