Dieser SQL-Kurs wendet sich vor allem an Programmierer, die mit Hilfe von SQL auf Datebaken zugreifen, und an alle, die Datenbanken neu entwerfen, erweitern oder abändern wollen
Bevor man überhaupt eine Datentabelle mittels des CREATE Statements erstellen
kann, muss man zumindest die wichtigsten Datentypen näher betrachten.
CHARACTER
alphanumerisch (feste Länge)
VARCHAR(m), TEXT
alphanumerisch (variable Länge)
INTEGER, INT, SMALLINT
Ganzzahl binär
NUMERIC(m,n)
Dezimalzahl (entpackt)
DECIMAL(m,n)
Dezimalzahl (gepackt)
FLOAT, REAL, DQUBLE PRECISION
Gleitpunktzahlen
DATE, TIME, TIMESTAMP
Datum und/oder Uhrzeit
3.2 Datendefinition
Not Null:
spezifiziert ein "Mussfeld", d.h. in allen Zeilen der Tabelle muss
dieses Feld mit einem signifikanten Wert versorgt sein!
Der Wert NULL bedeutet "Wert
unbekannt". NULL ist nicht zu verwechseln mit Leerzeichen oder der
"0"!
SQL unterstützt eine systematische Behandlung von NULL-Werten bzgl.
der Datenmanipulation
Check:
Mittels einer Check-Klausel wird festgelegt, welche Bedingung ein Attribut erfüllen
muss. Soll zum Beispiel ein Attribut Gehalt immer zwischen 500 und 10000 liegen,
so wird dies von der Check-Klausel sichergestellt, d.h. der Attributwert wird
nur in die Datenbank eingetragen wenn er dieser Restrektion entspricht.(siehe
Beispiel in der Create Anweisung.)
Unique:
Die Unique-Klausel garantiert, dass ein Attributwert nur einmal in einer Spalte
vorkommen kann. Dies ist sehr wichtig wenn zum Beispiel sichergestellt werden
soll, dass Artikelnummern nur einmal vergeben werden.
Primary Key, Foreign Key:
Beschreibt den Primär- bzw. Sekundärschlüssel einer Relation. Die Schlüssel
werden durch die Überführung in die dritte Normalenform ermittelt und müssen
dann in der Create-Anweisung angegeben werden.
3.3 CREATE-Anweisung
Die Veranschaulichung der behandelten Befehle erfolgt am Beispiel einer
Personalrelation.
CREATE TABLE personal
( Persnr SMALLINT PRIMARY KEY UNIQUE,
Name CHARACTER(25) NOT NULL,
Ort CHARACTER(20),
Gehalt NUMERIC(6.2) CHECK (Gehalt > 0.00 AND Gehalt
< 20000.00)
)
Warum jedes Team Arbeitsmanagement-Tools benötigt. Man schätzt, dass 25% eines durchschnittlichen Mitarbeiter-Tages durch ineffiziente Arbeit vergeudet werden.