Re[2]: Unimpletmented features - Mailing list pgsql-general

From John Morton
Subject Re[2]: Unimpletmented features
Date
Msg-id 200008170113.NAA30653@vesta.plain.co.nz
Whole thread Raw
In response to Re: Unimpletmented features  ("Ross J. Reedstrom" <reedstrm@rice.edu>)
Responses Re: Re[2]: Unimpletmented features  (Stephan Szabo <sszabo@megazone23.bigpanda.com>)
Re: Unimpletmented features  ("Ross J. Reedstrom" <reedstrm@rice.edu>)
List pgsql-general
On Wed, 16 Aug 2000 10:28:24 -0500 you wrote:

 > On Wed, Aug 16, 2000 at 06:44:27PM +1200, John Morton wrote:
 > >
 > > What happened when I tryed it:
 > >
 > > DBD::Pg::db do failed: ERROR:  ALTER TABLE / ADD CONSTRAINT is not implemented
 > >
 > > If I find another unimplemented 'feature' of postgresql 7.0.2 documented
 > > in the manual I swear to god I'm going to go postal.
 >
 > Now John, let's keep it all in perspective: ALTER TABLE / ADD CONSTRAINT
 > not working isn't going to cost you your job or anything, is it?

I've taken my dried frog pills and I'm feeling much better :-)

 > >
 > > How about a 'not yet implemented in 7.0' line in the documentation for
 > > this stuff?
 > >
 >
 > How about reading farther down the document? to quote ( from
 > http://postgresql.org/docs/user/sql-altertable.htm under Notes):
 >
 >     In the current implementation, only FOREIGN KEY constraints can
 >     be added to a table. To create or remove a unique constraint,
 >     create a unique index (see CREATE INDEX). To add check constraints
 >     you need to recreate and reload the table, using other parameters
 >     to the CREATE TABLE command.

Ah. I was just glancing at the synopsis and the section of ANSI SQL that
wasn't implemented at the bottom, so I missed it.

 > reedstrm=# alter table t2 add constraint foo foreign key (x2) references t1(x);
 > NOTICE:  ALTER TABLE ... ADD CONSTRAINT will create implicit trigger(s)
 > for FOREIGN KEY check(s) CREATE
 > reedstrm=# select version();
 >                             version
 > ---------------------------------------------------------------
 >  PostgreSQL 7.0.2 on i686-pc-linux-gnu, compiled by gcc 2.95.2
 > (1 row)
 >
 > reedstrm=#
 >
 > Is that what you experienced?

That much works for me, thanks. I was looking at adding uniqueness across
fields but I can do that with CREATE INDEX, so it's not a showstopper.
If I was trying to add other contraints I'd be having more trouble. I seem
to recall that the rename/create/fill/delete kludge required rebuilding
indexes and permissions by hand in 6.5.*; is it the same story in 7.0?

 > A further problem can occur because of reorganization problems
 > at postgresql.org: There are two sets of documentation!  Those for
 > the released version, and those for that track the CVS development
 > version. In response to many cries of "But all the cool new features
 > aren't documented!" that happened around the 6.[03] releases, the core
 > developers got very hardnosed (with each other, as well as everyone
 > else) and insisted that a patch fora new feature was not complete until
 > it patched the docs, as well. This means the development docs often
 > reference features that are not yet released, but _do_ exist. It's not
 > vaporware documentation, just pre-release. Hey, it's a lot better than
 > _no_ documentation.

Yeah, I guess I can live with that, though I'd be much happier during
development to have the full array of alter commands at my disposal.

John

pgsql-general by date:

Previous
From: "Darrin Ladd"
Date:
Subject: [General]Postgres Upgrade
Next
From: Stephan Szabo
Date:
Subject: Re: Re[2]: Unimpletmented features