Spaltendefinition (column_definition)
Eine Spaltendefinition (
column_definition) definiert eine Spalte einer Tabelle. Name und Datentyp jeder Spalte werden durch Spaltenname (column_name) und Datentyp (data_type) bestimmt. Die Spaltennamen müssen innerhalb einer Basistabelle eindeutig sein.Syntax
<column_definition> ::= <column_name> <data_type> [<column_attributes>]
| <column_name> <domain_name> [<column_attributes>]
Erläuterung
Wenn das Spaltenattribut (
column_attributes) [PRIMARY] KEY angegeben ist, darf die CREATE TABLE-Anweisung keine Schlüsseldefinition (key_definition) enthalten.Eine Spaltendefinition darf nur aus einem Spaltennamen (
column_name) bestehen, wenn in der CREATE TABLE-Anweisung ein QUERY-Ausdruck (query_expression) verwendet wird.Wenn Spaltenname und Domänenname (
domain_name), also der Name eines Wertebereiches, angegeben werden, muß durch den Domänennamen ein existierender Wertebereich identifiziert werden. Der angegebenen Spalte wird der Datentyp und die Länge des Wertebereichs zugewiesen. Falls der Wertebereich eine CONSTRAINT-Definition (constraint_definition) besitzt, hat dies die gleiche Wirkung wie die Angabe der entsprechenden CONSTRAINT-Definition im Spaltenattribut der Spaltendefinition.Spalten, die Bestandteil des Schlüssels sind, oder für die NOT NULL definiert wurde, heißen NOT NULL-Spalten. In diese kann ein
NULL-Wert nicht eingefügt werden.Siehe auch:
Restriktionen