Search Postgresql Archives

Re: REFERENCE problem with parent_table

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux