Einführung in SQL: Tabellenstruktur der Beispieldatenbank

Aus Wikibooks

Wechseln zu: Navigation, Suche


Hier wird erläutert, wie Sie mit der Beispieldatenbank arbeiten können.

Inhaltsverzeichnis

[Bearbeiten] Was ist ein Skript?

Unter einem Wikipedia-logo.png Skript versteht man in der EDV eine Liste von Befehlen, die durch einen einzelnen Befehl aufgerufen und automatisch nacheinander ausgeführt werden. Diese Befehle sind meist in einer Datei zusammengefasst und werden dadurch ausgeführt, dass die betreffende Datei aufgerufen wird.

Bei SQL sind solche Dateien unter Windows üblicherweise mit der Endung ".sql" gespeichert.

Solche Skripte stehen sowohl zum Anlegen der Beispieldatenbank als auch für nachträgliche Änderungen zur Verfügung.

[Bearbeiten] Beispieldatenbank anlegen

Die Beispieldatenbank kann auf zwei Arten angelegt werden.

Attention green.svg

Achtung
Die Datenbankstruktur wurde überarbeitet; alle Beispiele und Skripte wurden inzwischen angepasst. Sie müssen aber – siehe die folgenden Status-Hinweise – noch ausführlich geprüft werden.
Zwischenstand am 15.12.2009; sobald alles erledigt ist, wird dieser Vermerk wieder entfernt.

[Bearbeiten] Skript ausführen

Dazu werden die erforderlichen Befehle in einem Skript gespeichert. Nachdem Sie sich beim DBMS angemeldet und die Datenbank (noch ohne Inhalt) erzeugt haben, führen Sie das Skript aus und erhalten dadurch die fertige Beispieldatenbank.

Die einzelnen Schritte werden auf den folgenden Seiten genau beschrieben:

   Status: vollständig angepasst und geprüft
   Status: Skript vollständig erstellt, Create Database fehlt, noch nicht getestet
   Status: vollständig angepasst, noch nicht geprüft
   Status: Skript vollständig erstellt, Create Database fehlt, noch nicht getestet
   Status: Skript vollständig erstellt, noch nicht geprüft

Hinweis: Datumsangaben werden in den Skripts durch '2009-12-14' nach ISO 8601 angegeben. Dieses Format sollte jedes DBMS in jeder Sprache richtig verarbeiten können.

[Bearbeiten] Datenbank extrahieren

Dazu stellen wir eine "fertige" Version der Beispieldatenbank in komprimierter Form zur Verfügung. Die betreffende komprimierte Datei ist aus dem Internet herunterzuladen und zu extrahieren. Dadurch erhalten Sie direkt die fertige Beispieldatenbank.

Die einzelnen Schritte werden auf den folgenden Seiten genau beschrieben:

[Bearbeiten] Nachträgliche Änderungen

Hier gibt es Skripte für nachträgliche Änderungen, die in Änderung der Datenbankstruktur umgesetzt werden:

  • Spalten zum Hinzufügen und Ändern einzelner Spalten
  • Constraints zum Anlegen von UNIQUE KEYs und CHECK-Constraints
  • Indizes zum Anlegen weiterer Schlüssel
  • ForeignKeys zum Anlegen der Fremdschlüssel
  • Anpassung für die Änderung der Daten nach den vorstehenden Änderungen

Hier gibt es Skripte, die zum Erzeugen von Testdaten benutzt werden:

  • Testdaten zum Anlegen "vieler" weiterer Daten


Attention green.svg

Achtung!
Diese Änderungen dürfen erst an den entsprechenden Stellen in Änderung der Datenbankstruktur bzw. Testdaten erzeugen ausgeführt werden; vorher fehlt die notwendige Sachkenntnis. Außerdem muss – wie dort erläutert – die Reihenfolge der Änderungen beachtet werden.

           [Nach oben]

[Bearbeiten] Die einzelnen Tabellen

Es folgen die Definitionen der einzelnen Tabellen; dabei ist in Klammern jeweils der Tabellen-Alias genannt. In farbiger Schrift stehen Spalten, die durch die nachträglichen Änderungen eingefügt werden.

[Bearbeiten] Versicherungsvertrag (vv)

Spaltenname Datentyp Eigenschaft Erläuterung
ID integer Primärschlüssel
Vertragsnummer varchar(20) Pflicht eindeutig
Abschlussdatum date Pflicht
Art char(2) Pflicht nur 'HP' oder 'TK' oder 'VK' möglich
Mitarbeiter_ID integer Pflicht Verweis auf Tabelle Mitarbeiter
Fahrzeug_ID integer Pflicht Verweis auf Tabelle Fahrzeug
Versicherungsnehmer_ID integer Pflicht Verweis auf Tabelle Versicherungsnehmer
Basispraemie number Pflicht größer als 0
Praemiensatz integer Pflicht größer als 0
Praemienaenderung date optional
           [Nach oben]

[Bearbeiten] Zuordnung_SF_FZ (zu)

Spaltenname Datentyp Eigenschaft Erläuterung
ID integer Primärschlüssel
Schadensfall_ID integer Pflicht Verweis auf die Tabelle Schadensfall
Fahrzeug_ID integer Pflicht Verweis auf ein einzelnes beteiligtes Fahrzeug
Schadenshoehe number optional anteiliger Schaden dieses Fahrzeugs
Schuldanteil integer Pflicht größer/gleich 0
           [Nach oben]

[Bearbeiten] Schadensfall (sf)

Spaltenname Datentyp Eigenschaft Erläuterung
ID integer Primärschlüssel
Datum date Pflicht
Ort varchar(200) Pflicht genaue Angabe einschl. Straße und Umgebung
Beschreibung varchar(1000) Pflicht genaue Angabe der Umstände
Schadenshoehe number optional Angabe, soweit möglich
Verletzte char(1) Pflicht nur 'J' oder 'N' möglich
Mitarbeiter_ID integer Pflicht Verweis auf den Sachbearbeiter in der Tabelle Mitarbeiter
           [Nach oben]

[Bearbeiten] Versicherungsnehmer (vn)

Spaltenname Datentyp Eigenschaft Erläuterung
ID integer Primärschlüssel
Name varchar(30) Pflicht
Vorname varchar(30) optional bei natürlicher Person Pflicht
Geburtsdatum date optional bei natürlicher Person Pflicht
Fuehrerschein date optional bei natürlicher Person Pflicht
Ort varchar(30) Pflicht
PLZ char(5) Pflicht
Strasse varchar(30) Pflicht
Hausnummer varchar(10) Pflicht
Eigener_Kunde char(1) Pflicht nur 'J' oder 'N' möglich
Versicherungsgesellschaft_ID integer optional Verweis auf Tabelle Versicherungsgesellschaft, nur bei Fremdkunden
Geschlecht char(1) optional nur 'W' oder 'M' oder NULL möglich
           [Nach oben]

[Bearbeiten] Fahrzeug (fz)

Spaltenname Datentyp Eigenschaft Erläuterung
ID integer Primärschlüssel
Kennzeichen varchar(10) Pflicht eindeutig
Farbe varchar(30) optional
Fahrzeugtyp_ID integer Pflicht Verweis auf Tabelle Fahrzeugtyp
           [Nach oben]

[Bearbeiten] Dienstwagen (dw)

Spaltenname Datentyp Eigenschaft Erläuterung
ID integer Primärschlüssel
Kennzeichen varchar(10) Pflicht eindeutig
Farbe varchar(30) optional
Fahrzeugtyp_ID integer Pflicht Verweis auf Tabelle Fahrzeugtyp
Mitarbeiter_ID integer optional ggf. Verweis auf Tabelle Mitarbeiter
           [Nach oben]

[Bearbeiten] Mitarbeiter (mi)

Spaltenname Datentyp Eigenschaft Erläuterung
ID integer Primärschlüssel
Personalnummer varchar(10) Pflicht eindeutig
Name varchar(30) Pflicht
Vorname varchar(30) Pflicht
Geburtsdatum date Pflicht
Telefon varchar(30) optional
Mobil varchar(30) optional
Email varchar(50) optional
Raum varchar(10) optional
Ist_Leiter char(1) Pflicht nur 'J' oder 'N' möglich
Abteilung_ID integer Pflicht Verweis auf Tabelle Abteilung
Geschlecht char(1) Pflicht nur 'W' oder 'M' möglich
           [Nach oben]

[Bearbeiten] Versicherungsgesellschaft (vg)

Spaltenname Datentyp Eigenschaft
ID integer Primärschlüssel
Bezeichnung varchar(30) Pflicht
Ort varchar(30) optional
           [Nach oben]

[Bearbeiten] Fahrzeugtyp (ft)

Spaltenname Datentyp Eigenschaft Erläuterung
ID integer Primärschlüssel
Bezeichnung varchar(30) Pflicht
Hersteller_ID integer Pflicht Verweis auf Tabelle Fahrzeughersteller
           [Nach oben]

[Bearbeiten] Abteilung (ab)

Spaltenname Datentyp Eigenschaft Erläuterung
ID integer Primärschlüssel
Kuerzel varchar(10) Pflicht Datentyp auf CHAR(4) ändern
Bezeichnung varchar(30) Pflicht
Ort varchar(30) optional
           [Nach oben]

[Bearbeiten] Fahrzeughersteller (fh)

Spaltenname Datentyp Eigenschaft
ID integer Primärschlüssel
Name varchar(30) Pflicht
Land varchar(30) optional
           [Nach oben]
Persönliche Werkzeuge