CREATE TABLE - Tabellen erstellen

Syntax Beschreibung:

    CREATE TABLE erzeugt eine neue leere Tabelle in der aktiven Datenbank, deren Struktur hier beschrieben wird.

Datentyp

    Datentyp ist hier der Typ der Daten, die in dieser Tabellenspalte eingegeben werden sollen.

    Textdatentypen:

      CHARACTER - Textfelder
      CHAR - Abkürzung für CHARACTER


    Numerische Datentypen (exact numeric):

      DECIMAL - Festkommazahlen (die maximale Anzahl der Nachkommastellen und der Stellen vor dem Komma wird fest vorgegehen).
      DEC - Abkürzung für DECIMAL
      NUMERIC - wie DECIMAL, aber Anzahl der Kommastellen ...
      INTEGER - Zahlen ohne Kommastellen (ganze Zahlen), wird ohne Größenangaben verwendet
      weil vom DBMS vorgegeben
      INT - Abkürzung für INTEGER
      SMALLINT - Zahlen ohne Kommastellen (ganze Zahlen), wird ohne Größenangaben verwendet
      und belegt evtl. weniger Platz, weil für kleine Zahlen gedacht. Wird vom DBMS fest
      vorgegeben.









    Numerische Datentypen (approximate numeric):

      FLOAT - Zahlen in Exponentialform
      REAL - wie FLOAT, aber wird ohne Größenangaben verwendet, weil vom DBMS vorgegeben
      DOUBLE PRECISION - wie REAL, aber mit evtl. größeren (doppelten) Genauigkeit
      DOUBLE - Abkürzung für DOUBLE PRECISION




    Weitere Datentypen, die nich im ANSI-Standart definiert sind:

      DATE - Datum, in europäischen Implementierungen meistens im Format dd.mm.yyyy
      TIME - Zeit, in europäischen Implementierungen meistens im Format hh-mm-ss
      VARCHAR - Textdaten variabler länge, abhängig von der Implementierung nicht größer als 254 bis 2048 Zeichen.
      LONG VARCHAR - Textdaten variabler länge, abhängig von der Implementierung nicht größer als 16KB Zeichendaten.




    Beispiel:

    CREATE TABLE torder (
    onum INTEGER,
    anz  INTEGER );
    

    Hier wird eine leere Tabelle torder erstellt, die aus Datensätzen mit zwei Feldern
    onum und anz besteht.

Größe

    Syntax:

    [Nachkommastellen,] Gesamtgröße

    Bemerkungen: Nachkommastellen dürfen nur bei DECIMAL und NUMERIC angegeben werden. Gesamtgröße darf nur bei Datentypen mit variabler Größe angegeben werden. Wenn die Größe bei variablen Feldern nicht angegeben wird, dann gilt die Voreinstellung 1. Ausnahme: bei CHARAKTER muss die Gröse immer angegeben werden (keine Voreinstellungen).

    Beispiel:

    CREATE TABLE tverkauf (
     vnum  INTEGER,
     vname CHAR(30),
     stadt CHAR(20),
     prov  DECIMAL);
    

    Hier wird eine leere Tabelle tverkauf erstellt, die aus Datensätzen mit vier Feldern besteht: vnum - Zahl, vname - 30 Textzeichen, stadt - 20 Textzeichen und prov - Zahl.

Feldtyp

    Syntax: Feldtyp [...]

    Feldtyp ist hier der Typ der zu generierenden Spalte.

    NOT NULL


      Wird benötigt um sicherzustellen, daß das Feld keine NULL-Werte enthalten darf.

    UNIQUE


      Wird benötigt um nur von den vorher eingegebenen Werten unterschiedliche Werte im Feld zu zulassen , um doppelte Werte zu vermeiden.

    CHECK( Bedingung )


      Wird benötigt um Falscheingaben in das Feld zu vermeiden.

    DEFAULT = Wert


      Hiermit wird ein Vorgabewert für das Feld definiert.

    PRIMARY KEY


      Teilt dem DBMS mit dieses Feld als Primärschlüssel zu benutzen.

    Beispiel:

    CREATE TABLE tverkauf (
     vnum  INTEGER NOT NULL UNIQUE PRIMARY KEY,
     vname CHAR(30) NOT NULL UNIQUE,
     stadt CHAR(20) DEFAULT='Berlin',
     prov  DECIMAL CHECK(comm < 1) );
    

    Hier wird eine leere Tabelle tverkauf erstellt, deren Datensätze aus vier Feldern bestehen:
    vnum - Zahl, die nicht NULL ist, nicht doppelt vorkommt und als Primärschlüssel dient;
    vname - Textfeld aus 30 Zeichen, daß nicht NULL ist und nicht doppelt vorkommt;
    stadt - Textfeld aus 20 Zeichen, daß mit 'Berlin' vorbelegt ist;
    prov - Zahl, die immer kleiner 1 sein muss.