Re: REFERENCE problem with parent_table

From: gustavo halperin <ggh(dot)develop(at)gmail(dot)com>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: REFERENCE problem with parent_table
Date: 2006-08-15 19:13:03
Message-ID: 44E21CBF.4010805@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Richard Broersma Jr wrote:
>> I need many tables of type "id" and "name", see below:
>> / CREATE TABLE id_names (
>> id smallint CONSTRAINT the_id PRIMARY KEY NOT NULL,
>> name text CONSTRAINT the_name UNIQUE
>> ) WITH OIDS;/
>> therefore I created these tables with the "LIKE" operator, see below:
>> / CREATE TABLE like_id_1( LIKE id_names INCLUDING DEFAULTS ) WITH OIDS;
>> CREATE TABLE like_id_2 ( LIKE id_names INCLUDING DEFAULTS ) WITH OIDS;
>>
>
> it looks like the syntax here is a little off from what is defined by:
> http://www.postgresql.org/docs/8.1/interactive/sql-createtable.html
>
> CREATE TABLE like_id_1 ( id smallint like id_names,
> name text like id_name ) with oids ;
>
Are you sure, I think that you are wrong. Operator "LIKE" is like a
operator for a "table_constraint", I mean, is wrote in a new line, like
a new column, and isn't property or part of any column. More over, in
the documentation is wrote: "/The LIKE clause specifies a table from
which the new table automatically copies all column names, their data
types, and their not-null constraints./", but is like the operator
"REFERENCE" see the tables "like_id_1" empty (see below) or maybe is a
bug in posgresql.
/ database=# insert into like_id_1 values (1,'hello');
INSERT 157581 1
database=# select * from like_id_1;
id | name
----+--------
1 | hello
(1 row)
database=# CREATE TABLE ref_1 ( id smallint CONSTRAINT the_id
REFERENCES like_id_1 (id) );
ERROR: there is no unique constraint matching given keys for
referenced table "like_id_1"/

Thank you any way,
Gustavo

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Stephan Szabo 2006-08-15 19:40:26 Re: REFERENCE problem with parent_table
Previous Message shaun.ricci 2006-08-15 18:19:39 Changing the data directory Ubuntu