RE: changes to table creation syntax in 7.1.2? - Mailing list pgsql-sql
From | Jayson Callaway |
---|---|
Subject | RE: changes to table creation syntax in 7.1.2? |
Date | |
Msg-id | 001c01c130d3$8da26f30$014ba8c0@boston.amer.iona.com Whole thread Raw |
In response to | Re: changes to table creation syntax in 7.1.2? (Jason Earl <jdearl@yahoo.com>) |
List | pgsql-sql |
Jason, First of all, thanks for your response. I had given up that anyone was going to respond. After seeing your response I went back and found what was making the difference. The failing syntax below worked on 7.0.3 but not on the 7.1.2 version. Seeing your working example(unlike another response) gave me the answer. Jayson This file of commands fail... [jayson@grendal db]$ cat test CREATE TABLE "test_cat" ( "uid" int4 NOT NULL, "name" text NOT NULL, "description" text NOT NULL, "parent_category_uid" int4 NULL REFERENCES test_cat(uid) ); CREATE UNIQUE INDEX test_cat_pkey on test_cat (uid); [jayson@grendal db]$ psql -e -f test -d wr -U wr_web CREATE TABLE "test_cat" ( "uid" int4 NOT NULL, "name" text NOT NULL, "description" text NOT NULL, "parent_category_uid" int4 NULL REFERENCES test_cat(uid) ); CREATE UNIQUE INDEX test_cat_pkey on test_cat (uid); psql:test:6: NOTICE: CREATE TABLE will create implicit trigger(s) for FOREIGN KEY check(s) psql:test:6: ERROR: UNIQUE constraint matching given keys for referenced table "test_cat" not found [jayson@grendal db]$ While this set of commands is successsfull... [jayson@grendal db]$ cat test CREATE TABLE "test_cat" ( "uid" int4 PRIMARY KEY, "name" text NOT NULL, "description" text NOT NULL, "parent_category_uid" int4 NULL REFERENCES test_cat(uid) ); [jayson@grendal db]$ psql -e -f test -d wr -U wr_web CREATE TABLE "test_cat" ( "uid" int4 PRIMARY KEY, "name" text NOT NULL, "description" text NOT NULL, "parent_category_uid" int4 NULL REFERENCES test_cat(uid) ); psql:test:6: NOTICE: CREATE TABLE/PRIMARY KEY will create implicit index 'test_cat_pkey' for table 'test_cat' psql:test:6: NOTICE: CREATE TABLE will create implicit trigger(s) for FOREIGN KEY check(s) CREATE [jayson@grendal db]$ > -----Original Message----- > From: Jason Earl [mailto:jdearl@yahoo.com] > Sent: Wednesday, August 29, 2001 4:35 PM > To: Jayson Callaway; pgsql-sql@postgresql.org > Subject: Re: [SQL] changes to table creation syntax in 7.1.2? > > > It looks like it works here :(. Do you have an error > message? > > processdata=# select version(); > version > > --------------------------------------------------------------- > PostgreSQL 7.1.2 on i686-pc-linux-gnu, compiled by > GCC 2.95.4 > (1 row) > > processdata=# CREATE TABLE category > processdata-# ( > processdata(# uid int4 PRIMARY KEY, > processdata(# description text NOT NULL, > processdata(# parent int4 NULL REFERENCES > category(uid) > processdata(# ) > processdata-# > processdata-# ; > NOTICE: CREATE TABLE/PRIMARY KEY will create implicit > index 'category_pkey' for table 'category' > NOTICE: CREATE TABLE will create implicit trigger(s) > for FOREIGN KEY check(s) > CREATE > > --- Jayson Callaway <jayson.callaway@iona.com> wrote: > > In postgres 7.0.x I had some working code that > > lookes something like: > > > > CREATE TABLE category > > ( > > uid int4 PRIMARY KEY, > > description text NOT NULL, > > parent int4 NULL REFERENCES category(uid) > > ) > > > > After upgrading to postgres 7.1.2 however this > > syntax is not accepted > > anymore. I receive an error that says it can not > > create the reference > > because the table category does not exist. > > > > How do I setup this type of reference structure in > > 7.1.2? Did the syntax > > change? > > > > I am running under Linux. > > -- > > Jayson Callaway > > > > > > > > ---------------------------(end of > > broadcast)--------------------------- > > TIP 1: subscribe and unsubscribe commands go to > majordomo@postgresql.org > > > __________________________________________________ > Do You Yahoo!? > Get email alerts & NEW webcam video instant messaging with Yahoo! > Messenger > http://im.yahoo.com >