## Tabellen

### Voraussetzungen

Sie benötigen die Demo-Daten für das SQL-Tutorial.

Starten Sie das Query Tool SQL Studio als Datenbankadministrator MONA mit dem Kennwort RED und melden Sie sich an die Demo-Datenbankinstanz DEMODB an.

### Anlegen einer Tabelle

Zum Anlegen einer Tabelle verwenden Sie die CREATE TABLE-Anweisung.

CREATE TABLE hotel.person
(pno FIXED(6),
name CHAR(20),
city CHAR(20))

Der Name der Tabelle, person, wird nach den Schlüsselworten CREATE TABLE angegeben. Die Tabelle person soll im Schema hotel angelegt werden.

In der Liste der Spaltendefinitionen müssen für jede Spalte deren Name und Datentyp angegeben werden. Die Liste der Spaltendefinitionen wird in Klammern eingeschlossen.

● Die Tabelle person enthält Spalten mit den folgenden Namen: pno, name, city

● Die Spalten haben folgende Datentypen: pno FIXED(6), name und city jeweils CHAR(20)

Siehe auch:

SQL-Referenzhandbuch, CREATE TABLE-Anweisung (create_table_statement)

SQL-R eferenzhandbuch, Spaltenname (column_name)

SQL-R eferenzhandbuch, Datentyp (data_type)

### Datenintegrität

Die Tabelle person ist eine sehr einfache Tabelle. Eingabebeschränkungen für Werte in die Spalten der Tabelle person gibt es nur insofern, dass die Datentypen vorgegeben sind. In der Realität sind weitere Angaben, Beschränkungen und Objekte zur Wahrung der Datenintegrität üblich, z.B. Constraints, Primärschlüssel, Wertebereiche, Datenbankprozeduren, Datenbanktrigger.

Siehe auch:

SQL-R eferenzhandbuch, Datenintegrität absichern

### Ändern einer Tabelle

Die Definition einer Tabelle kann während des Datenbankbetriebs mit Hilfe der ALTER TABLE-Anweisung verändert werden.

ALTER TABLE hotel.person
ADD (code FIXED(5), fon FIXED(8))

Der Personentabelle werden Spalten für die Telefonvorwahl und -nummer hinzugefügt.

Siehe auch:

SQL-R eferenzhandbuch, ADD-Definition (add_definition)

ALTER TABLE hotel.person
DROP (code)

In der Kundentabelle wird die Spalte für die Telefonvorwahl wieder gelöscht.

Siehe auch:

SQL-R eferenzhandbuch, DROP-Definition (drop_definition)

ALTER TABLE hotel.person
MODIFY fon FIXED(10)

In der Kundentabelle wird die Spaltendefinition geändert. Die Neudefinition wird nur dann durchgeführt, wenn ihr die bereits gespeicherten Werte entsprechen.

Siehe auch:

SQL-R eferenzhandbuch, MODIFY-Definition (modify_definition)

Weitere Änderungen an bereits vorhandenen Tabellen sind möglich.

Siehe auch:

SQL-Referenzhandbuch, ALTER TABLE-Anweisung (alter_table_statement)

### Umbenennen einer Tabelle

Zum Umbenennen einer Tabelle verwenden Sie die RENAME TABLE-Anweisung.

RENAME TABLE hotel.person TO member

Umbenennen der Tabelle person in member

Siehe auch:

SQL-R eferenzhandbuch, RENAME TABLE-Anweisung (rename_table_statement)

### Löschen einer Tabelle

Zum Löschen einer Tabelle verwenden Sie die DROP TABLE-Anweisung.

DROP TABLE hotel.member

Mit Hilfe dieser SQL-Anweisung löschen Sie die Tabellendefinition, den Inhalt der Tabelle und alle abhängigen Objekte (z.B. View-Tabellen, Indizes). Das Löschen der Tabelle kann nur durch den Eigentümer der Tabelle erfolgen.

Siehe auch:

SQL-R eferenzhandbuch, DROP TABLE-Anweisung (drop_table_statement)

Weitere Beispiele zur Datendefinition