SQL-Tabellen
| Befehl | Bedeutung |
|---|---|
CREATE TABLE R ... |
Grundbaustein zum Erzeugen von Relationsschema R |
DROP TABLE Mitarbeiter; |
Löschen |
ALTER TABLE Mitarbeiter ADD Telefon CHAR(16); |
Wert verändern. Dabei enstehen Nullwerte |
| `ALTER TABLE Mitarbeiter DROP Geburtstag; |
CREATE TABLE
CREATE TABLE MODUL (
MODNR CHAR(9) NOT NULL,
TITEL_DES_MODULS VARCHAR(15),
LEISTUNGSPUNKTE INT,
PERSNR INT NOT NULL,
SEMESTER CHAR(6),
PRIMARY KEY (MODNR),
FOREIGN KEY (PERSNR) REFERENCES DOZENT(PERSNR)
);
Die durch die Anweisung CREATE TABLE definierten Relationen werden als Basisrelationen bezeichnet, d.h. die Tupel werden vom DBMS tatsächlich erzeugt.
CREATE TABLE mit Referenz-Trigger
CREATE TABLE MODUL (
MODNR CHAR(9) NOT NULL,
TITEL_DES_MODULS VARCHAR(15),
LEISTUNGSPUNKTE INT,
PERSNR INT NOT NULL,
SEMESTER CHAR(6),
PRIMARY KEY (MODNR),
FOREIGN KEY (PERSNR) REFERENCES DOZENT(PERSNR)
ON DELETE CASCADE
ON UPDATE CASCADE
);
DROP SCHEMA
DROP SCHEMA UNIVERSITÄT_DB CASCADE;
…mit all seinen Tabellen, Wertebereichen und anderen Elementen
Wird statt
CASCADEdieRESTRICT-Option gewählt, dann wird das Schema nur dann gelöscht, wenn es keine Elemente mehr enthält; andernfalls wird dasDROP-Befehl nicht ausgeführt.
DROP TABLE
DROP TABLE MODUL CASCADE;
Wenn es keine Elemente enthält, sonst wird nicht ausgeführt
Wird die
RESTRICTstattCASCADE-Option gewählt, wird eine Tabelle nur gelöscht, wenn sie nicht in Einschränkungen referenziert wird. (z.B. durch die Fremdschlüsseldefinition in einer anderen Tabelle). BeiCASCADEwerden auch alle Einschränkungen und Views, welche die löschende Tabelle referenzieren, gelöscht.
ALTER TABLE
ALTER TABLE MODUL ADD MAX_PERSONEN INT;
- Hinzufügen eines Attributes namens
MAX_PERSONEN:
ALTER TABLE MODUL DROP SEMESTER CASCADE;
- Um eine Spalte zu entfernen müssen wir
CASCADEbzw.RESTRICTwählen, beiRESTRICTist Befehl nur erfolgreich, falls keine Views oder Constraints die Spalte referenzieren. BeiCASCADEwird alles automatisch gelöscht.
ALTER TABLE MODUL ALTER COLUMN LEISTUNGSPUNKTE DROP DEFAULT;
- Änderung einer Spaltendefinition durch das Entfernen einer existierenden DEFAULT-Klausel