Anfang des Inhaltsbereichs

Diese Grafik wird im zugehörigen Text erklärtCOLUMNS Dokument im Navigationsbaum lokalisieren

Voraussetzungen

Sie haben die StrukturlinkDemo-Daten für das SQL-Tutorial erzeugt.

Melden Sie sich als Benutzer MONA an die Demo-Datenbankinstanz DEMODB an.

Beispiele

Anhand der Systemtabelle COLUMNS können Sie unter anderem folgende Datenbankinformationen ermitteln:

     Spalten der Tabelle RESERVATION in der Reihenfolge ihrer Definition, zusammen mit den zugehörigen Kommentaren

SELECT columnname, comment
  FROM DOMAIN.COLUMNS
    WHERE tablename = 'RESERVATION' ORDER BY pos

     Datentypen aller Spalten der Tabelle CUSTOMER

SELECT columnname, datatype, len, dec, codetype
  FROM DOMAIN.COLUMNS
    WHERE tablename = 'CUSTOMER'

     Alle Spalten der Basistabellen des Schemas HOTEL, die den Datentyp DATE besitzen

SELECT tablename,columnname
  FROM DOMAIN.COLUMNS
    WHERE schemaname = 'HOTEL'
      AND tabletype = 'TABLE'
      AND datatype = 'DATE'

     Alle Spalten der eigenen Tabelle HOTEL, für die ein Vorschlagswert definiert wurde, sowie dieser Vorschlagswert

SELECT columnname, "DEFAULT"
  FROM DOMAIN.COLUMNS
    WHERE schemaname = 'HOTEL'
      AND tablename = 'HOTEL'
      AND
"DEFAULT" IS NOT NULL

Beachten Sie, dass die Spalte DEFAULT als spezieller Bezeichner (Bezeichner eingeschlossen in doppelte Anführungszeichen) angegeben werden muss, da DEFAULT ein reserviertes Schlüsselwort ist.

     Alle Primärschlüsselspalten der Tabelle ROOM, sortiert nach ihrer Reihenfolge im Primärschlüssel

SELECT columnname
  FROM DOMAIN.COLUMNS
    WHERE tablename = 'ROOM' AND mode = 'KEY' ORDER BY keypos

     Alle mit NOT NULL definierten Spalten der Tabelle CUSTOMER

SELECT columnname
  FROM DOMAIN.COLUMNS
    WHERE tablename = 'CUSTOMER' AND mode = 'MAN'

     Alle für den Benutzer MONA änderbaren Spalten der Tabelle RESERVATION

SELECT columnname
  FROM DOMAIN.COLUMNS
    WHERE tablename = 'RESERVATION' AND columnprivileges LIKE '%UPD%'

     Alle für den Benutzer MONA änderbaren Spalten der Tabelle RESERVATION, für die er dieses Privileg weitervergeben darf

SELECT columnname
  FROM DOMAIN.COLUMNS
    WHERE tablename = 'RESERVATION' AND columnprivileges LIKE '%UPD+%'

Voraussetzung für das folgende Beispiel ist die Definition von Wertebereichen und deren Verwendung in Tabellen. Verfahren Sie dazu z.B. wie im SQL-Tutorial, StrukturlinkWertebereiche beschrieben.

     Alle Tabellenspalten, für die bei der Definition der Wertebereich name_domain oder birthday_domain angegeben wurden

SELECT schemaname, tablename, columnname
  FROM DOMAIN.COLUMNS
    WHERE domainname = 'NAME_DOMAIN' OR domainname = 'BIRTHDAY_DOMAIN'

Hinweis

Spalten im Index: siehe INDEXCOLUMNS

Spalten im referentiellen Constraint: siehe FOREIGNKEYCOLUMNS

Primärtabellen- oder View-Tabellen-Spalten in View-Tabelle: siehe VIEWCOLUMNS

Ende des Inhaltsbereichs