From: | Martín Marqués <martin(at)bugs(dot)unl(dot)edu(dot)ar> |
---|---|
To: | LeoDeBeo <leodebeo(at)hotmail(dot)com>, pgsql-sql(at)postgresql(dot)org |
Subject: | Re: create table |
Date: | 2001-05-04 16:17:02 |
Message-ID: | 01050419170205.07818@bugs |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
On Dom 29 Abr 2001 22:34, LeoDeBeo wrote:
> can anybody explain me the syntax of Create Table documentation??
>
> CREATE [ TEMPORARY | TEMP ] TABLE table (
> column type
> [ NULL | NOT NULL ] [ UNIQUE ] [ DEFAULT value ]
> [ column_constraint_clause | PRIMARY KEY } [ ... ] ]
> [ , ... ]
> [ , PRIMARY KEY ( column [, ... ] ) ]
> [ , CHECK (condition) ]
> [ , table_constraint_clause ]
> ) [ INHERITS ( inherited_table [, ... ] ) ]
>
> i don't understand what the curly brace means after PRIMARY KEY (where is
> the other matching brace? ). It must have something to do with the fact
> that a 'column type' pair ( with options ) can occur more than once, but is
> this syntax right?
> i also don't understand what the [ ... ] and [, ... ] means. I do know that
> brackets denote options and | alternatives.
My docs (7.1) look like this:
CREATE [ TEMPORARY | TEMP ] TABLE table_name (
{ column_name type [ column_constraint [ ... ] ]
| table_constraint } [, ... ]
) [ INHERITS ( inherited_table [, ... ] ) ]
where column_constraint can be:
[ CONSTRAINT constraint_name ]
{ NOT NULL | NULL | UNIQUE | PRIMARY KEY | DEFAULT value | CHECK (condition) |
REFERENCES table [ ( column ) ] [ MATCH FULL | MATCH PARTIAL ]
[ ON DELETE action ] [ ON UPDATE action ]
[ DEFERRABLE | NOT DEFERRABLE ] [ INITIALLY DEFERRED | INITIALLY IMMEDIATE
]
}
and table_constraint can be:
[ CONSTRAINT constraint_name ]
{ UNIQUE ( column_name [, ... ] ) |
PRIMARY KEY ( column_name [, ... ] ) |
CHECK ( condition ) |
FOREIGN KEY ( column_name [, ... ] ) REFERENCES table [ ( column [, ... ] )
]
[ MATCH FULL | MATCH PARTIAL ] [ ON DELETE action ] [ ON UPDATE action ]
[ DEFERRABLE | NOT DEFERRABLE ] [ INITIALLY DEFERRED | INITIALLY IMMEDIATE
]
}
Looks clear to me. :-)
--
El mejor sistema operativo es aquel que te da de comer.
Cuida tu dieta.
-----------------------------------------------------------------
Martin Marques | mmarques(at)unl(dot)edu(dot)ar
Programador, Administrador | Centro de Telematica
Universidad Nacional
del Litoral
-----------------------------------------------------------------
From | Date | Subject | |
---|---|---|---|
Next Message | Stephan Szabo | 2001-05-04 21:34:14 | Re: Dateadd |
Previous Message | Jeff Self | 2001-05-04 15:50:31 | Re: "correct" sorting. |