Downloads

Aus Wikibooks
Zur Navigation springen Zur Suche springen

Seitentitel: Einführung in SQL: Downloads
(Einführung in SQL: Downloads)


Hier wird beschrieben, wie die vorbereiteten Dateien zur Beispieldatenbank verwendet werden können.

  • Die vollständige Beispieldatenbank kann (in drei Versionen) aus dem Web-Archiv der Download-Seite heruntergeladen werden.
  • Die Skripte zur Erstellung der Beispieldatenbank können wahlweise aus dem Web-Archiv oder aus eigenen Wikibooks-Unterseiten heruntergeladen werden.
  • Skripte zur späteren Erweiterung gibt es ebenso sowohl im Web-Archiv als auch auf Wikibooks-Unterseiten.

Was ist ein Skript?[Bearbeiten]

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

Bei SQL werden solche Dateien unter Windows üblicherweise mit der Endung '.sql' gespeichert.

Verbindung zu den Datenbanksystemen[Bearbeiten]

In der Regel gibt es verschiedene Möglichkeiten: über eine Befehlszeile oder mit einem GUI-Programm. Der jeweils gängigste Weg hängt vom DBMS ab und wird in dessen Dokumentation beschrieben; im Folgenden wird nur ein Verfahren besprochen.

Die Verbindung zu einem DBMS wird für beide Verfahren benötigt – sowohl zum Öffnen und Bearbeiten einer vorhandenen Datenbank als auch zum Öffnen und Ausführen eines Skripts.

Firebird[Bearbeiten]

Wenn Sie nicht mit einem GUI-Programm arbeiten, funktioniert immer das Basisprogramm ISQL. Registrieren Sie zunächst ein Kürzel für die Datenbank, wie in der QuickStart-Beschreibung unter Use database aliases beschrieben: In der Datei aliases.conf im Firebird-Verzeichnis ist ein Eintrag wie folgt einzufügen:

# unter Windows
wb-datenbank = C:\Users\Public\Documents\WikiBooks\SQL\Beispieldatenbank.fdb
# unter Linux
wb-datenbank = /home/wikibooks/sql/Beispieldatenbank.fdb

Für diese Änderung werden Administrator-Rechte benötigt. Virtuelle Laufwerke werden nicht erkannt (auch das spricht für den Eintrag eines Alias-Namens für die Datenbank). Selbstverständlich müssen Sie im Verzeichnis der Datenbank alle erforderlichen Rechte erhalten.

Öffnen Sie nun eine Command-Box und wechseln in das Verzeichnis, in dem die Datenbank stehen soll oder sich bereits befindet. Starten Sie den SQL-Interpreter:

C:\Programme\Firebird\bin\isql.exe

Jeder der folgenden Befehle muss mit einem Semikolon abgeschlossen werden. Er kann sich auch auf mehrere Zeilen verteilen.

---  So erstellen Sie die neue Datenbank:
SQL> create database 'wb-datenbank'
CON> user 'SYSDBA' password 'masterkey' default character set UTF8;
---  Führen Sie das Skript zur Erstellung der Datenbank aus:
SQL> input 'CreateScript-Firebird.sql';
---  Schließen Sie den SQL-Interpreter:
SQL> quit;
---  So öffnen Sie die die vorbereitete oder die erzeugte Datenbank zur Bearbeitung:
SQL> connect 'wb-datenbank' user 'SYSDBA' password 'masterkey';

MS-SQL[Bearbeiten]

Für dieses DBMS gibt es das Programm Microsoft SQL Server Management Studio (SSMS), und zwar für jede Server-Version eine eigene Studio-Version. Beim Programmstart melden Sie sich am Server an; die Zusammenarbeit mit der Datenbank geht über den Objekt-Explorer im Abschnitt Databases.

So registrieren Sie eine vorhandene Datenbank, beispielsweise die fertig vorbereitete Beispieldatenbank:

  • Wählen Sie mit einem Rechtsklick auf Databases die Option Attach.
  • Wählen Sie über die Schaltfläche Add (Hinzufügen) im oberen Teil des Fensters die betreffende mdf-Datei aus und bestätigen Sie die Auswahl mit OK.

So erstellen Sie die Beispieldatenbank mit dem Skript neu:

  • Gehen Sie über die Menü-Befehle File | Open | File und wählen Sie die CreateScript-MSSQL2005.sql aus.
  • Führen Sie das Skript mit der Schaltfläche Execute bzw. F5 aus.

In gleicher Weise können Sie zu der Beispieldatenbank spätere Skripte laden und ausführen.

MySQL[Bearbeiten]

Für dieses DBMS gibt es seit einiger Zeit das Programm MySQL Workbench als grafische Benutzeroberfläche. Man kann damit Datenbanken verwalten und darauf zugreifen, es verwirrt aber vielleicht durch seine umfangreichen Möglichkeiten.

Eine vorhandene Datenbank wird automatisch erkannt, sofern sie im richtigen Verzeichnis gefunden wird. Die fertig vorbereitete Beispieldatenbank muss deshalb im data-Verzeichnis (abhängig von Ihrer MySQL-Installation) gespeichert werden:

c:\ProgramData\MySQL\MySQL Server 5.5\data\beispieldatenbank

So erstellen Sie die Beispieldatenbank mit dem Skript neu:

Mithilfe der Workbench
  1. Starten Sie das Programm und rufen mit Strg + U den SQL-Editor auf.
  2. Die folgenden SQL-Befehle werden mit Strg + Umschalt + Enter bzw. mit dem „Blitz“ ausgeführt.
  3. Erstellen Sie im Abfragefenster „Query 1“ die neue Datenbank:
    create database Beispieldatenbank;
  4. Geben Sie an, dass diese Datenbank benutzt werden soll:
    use Beispieldatenbank;
  5. Laden Sie das Skript mit Strg + Umschalt + O und führen Sie es als SQL-Befehl aus.

Danach stehen im Objekt-Browser die Tabellen und Daten zur Verfügung, was mit einem SELECT-Befehl im Abfragefenster geprüft werden kann.

Mit mysql im Command-Fenster
  1. Starten Sie das Dienstprogramm mysql und melden Sie sich am Datenbanksystem mit dem richtigen Passwort (hier durch xxx angedeutet) an:
    mysql --user=root --password=xxx -b
  2. Die folgenden SQL-Befehle werden mit Semikolon abgeschlossen (nicht vergessen!) und mit Enter ausgeführt.
  3. Erstellen Sie die neue Datenbank:
    mysql > create database Beispieldatenbank;
  4. Geben Sie an, dass diese Datenbank benutzt werden soll:
    mysql > use Beispieldatenbank;
  5. Führen Sie das Skript (ggf. mit dem vollständigen Pfad) aus:
    mysql > source CreateScript-MySQL5.sql

Danach stehen die Tabellen und Daten zur Verfügung, was mit einem SELECT-Befehl geprüft werden kann. Mit exit; wird das Dienstprogramm verlassen.

Oracle[Bearbeiten]

Hinweis: Für Oracle wurde das Skript zur Erstellung der Beispieldatenbank angepasst und durch eine/n Oracle-Kenner/in getestet. Es fehlen noch saubere Formulierungen in diesem Abschnitt.

Für dieses DBMS gibt es das Programm Database Configuration Assistant (DBCA). Starten Sie es mit den Rechten als Administrator des Betriebssystems.

So benutzen Sie eine vorhandene Datenbank, beispielsweise die fertig vorbereitete Beispieldatenbank:

  • Dieser Punkt fehlt leider noch.

So erstellen Sie die Beispieldatenbank mit dem Skript neu:

  • Das vorbereitete Skript CreateScript-Oracle11.sql ist zu ändern: Im ersten Befehl ist nach dem Gleichheitszeichen das von Ihnen vorgesehene Schema anzugeben, beispielsweise:
    ALTER SESSION SET CURRENT_SCHEMA = S_EINFSQL;
  • Wählen Sie den Punkt Create a Database.
  • Bei allen folgenden Schritten können Sie die einfachsten Einstellungen übernehmen.
  • Im Schritt Database Content wählen Sie das vorbereitete Skript CreateScript-Oracle11.sql aus.

Nach Fertigstellen bzw. Finish steht die Datenbank zur Verfügung.

SQLite[Bearbeiten]

Hinweis: Für SQLite wurde das Skript zur Erstellung der Beispieldatenbank angepasst und durch eine SQLite-Kenner/in getestet. Es fehlen noch saubere Formulierungen in diesem Abschnitt.

Für dieses DBMS gibt es das Kommandozeilen-Tool SQLITE3.

So benutzen Sie eine vorhandene Datenbank, beispielsweise die fertig vorbereitete Beispieldatenbank:

sqlite3 Beispieldatenbank.db

So erstellen Sie die Beispieldatenbank mit dem Skript neu:

sqlite3 -init CreateScript-Sqlite.sql Beispieldatenbank.db

Die Download-Seite[Bearbeiten]

Sozusagen anstelle einer Buch-CD wurden verschiedene Dateien, die zur Beispieldatenbank gehören, auf eine Download-Seite ausgelagert. Früher war das bei vs-polis.de, jetzt handelt es sich um ein Archiv dieser Seite: https://web.archive.org/web/20180829030956/http://vs-polis.de/content/download_sql.html

Die vollständige Beispieldatenbank[Bearbeiten]

Eine fertige Beispieldatenbank steht – für Firebird, MS-SQL 2005 und MySQL 5.5 – als zip-Datei zur Verfügung. Sie müssen also so vorgehen:

  • Drücken Sie auf der archivierten Download-Seite auf die Schaltfläche, die zu Ihrem DBMS gehört.
  • Speichern Sie die zip-Datei an einer geeigneten Stelle, in der Regel in Ihrem Download-Bereich.
  • Öffnen Sie die zip-Datei zum Extrahieren.
  • Speichern Sie die darin enthaltenen Datei(en) in einem Arbeitsverzeichnis für die Beispieldatenbank.

Danach können Sie die Beispieldatenbank direkt öffnen und bearbeiten, wie es oben beim DBMS beschrieben ist.

Die Skripte verwenden[Bearbeiten]

  • Wählen Sie das Skript für die jeweils gewünschte Aufgabe:
    • Wenn Sie die Beispieldatenbank selbst erstellen wollen, sollen oder müssen, drücken Sie auf der archivierten Download-Seite im Abschnitt „Skripte zur Erstellung“ auf die Schaltfläche, die zu Ihrem DBMS gehört – zur Auswahl stehen: Firebird Version 2.1, MS-SQL Versionen 2005 / 2008, Oracle Version 11.
      Hinweis: Für MySQL und SQLite ist es (wegen späterer Änderungen) besser, die Alternative mit Unterseiten zu verwenden.
    • Für verschiedene Arbeiten in den Kapiteln Änderung der Datenbankstruktur und Testdaten erzeugen stehen ebenfalls Skript-Dateien bereit. Wenn Sie eines dieser Skripte nutzen wollen, drücken Sie auf der archivierten Download-Seite im Abschnitt „Skripte zur späteren Erweiterung“ auf die Schaltfläche zu dem gewünschten Arbeitsschritt.
  • Wenn mit der linken Maustaste der Download nicht automatisch gestartet wird, dann verwenden Sie die rechte Maustaste und wählen Sie Ziel speichern unter.
  • Speichern Sie die Datei in dem Verzeichnis (Ordner), in dem die fertige Datenbank liegen soll, z. B. unter C:\Users\Public\Documents\WikiBooks\SQL.
  • Speichern Sie die Datei dort unter einem sinnvollen Namen, z. B. als CreateScript-MySQL.sql (meistens wird ein richtiger Name vorgegeben).

Danach können Sie die gewünschte Aufgabe mit Hilfe dieses Skripts ausführen, wie es oben beim DBMS beschrieben ist.

Alternative mit Unterseiten[Bearbeiten]

Die fertige Beispieldatenbank kann nicht zur Verfügung gestellt werden, weil zip-Dateien bei Wikibooks nicht hochgeladen werden dürfen. Sie müssen sie deshalb mit einem Skript selbst erstellen.

Für alle Skript-Dateien gilt das gleiche Verfahren; sinnvollerweise sind die Datei, diese Beschreibung und die jeweilige Unterseite gleichzeitig in verschiedenen Fenstern zu öffnen.

  • Erstellen Sie mit einem Editor für Textdateien[1] eine neue Datei unter dem Namen, der für das gewünschte Skript sinnvoll ist.
  • Öffnen Sie die (leere) Datei zum Bearbeiten.
  • Wechseln Sie zu der Unterseite, die den Quelltext des gewünschten Skripts enthält.
  • Markieren Sie den gesamten Quelltext. (Die Tastenkombination Strg + A für die Funktion „Alles markieren“ klappt leider nicht, weil nicht nur der Kasten, sondern das gesamte Fenster ausgewählt würde.) Kopieren Sie dann den markierten Bereich in die Zwischenablage, z. B. mit der Tastenkombination Strg + C.
  • Wechseln Sie zum Editor in das Eingabefeld für den Text. Fügen Sie dann den Text aus der Zwischenablage in das (bisher leere) Textfeld ein, z. B. mit der Tastenkombination Strg + V.
  • Wählen Sie für die Datei den Unicode-Zeichensatz[2] und speichern Sie die Datei.

Danach können Sie die gewünschte Aufgabe mit Hilfe dieses Skripts ausführen, wie es oben beim DBMS beschrieben ist.

Zum Erstellen der Beispieldatenbank[Bearbeiten]

Dafür sind auf jeweils einer eigenen Unterseite die folgenden Skripte vorbereitet.

Für einzelne Aufgaben[Bearbeiten]

Für verschiedene Arbeiten in den Kapiteln Änderung der Datenbankstruktur und Testdaten erzeugen stehen auf jeweils einer eigenen Unterseite die folgenden Skripte bereit.

Bitte beachten Sie unbedingt die Reihenfolge sowie die wichtigen Hinweise im nächsten Abschnitt!

  1. Skript-Spalten.sql – Hinzufügen und Ändern einzelner Spalten
  2. Skript-Constraints.sql – Anlegen von UNIQUE KEYs und CHECK-Constraints
  3. Skript-Indizes.sql – Anlegen weiterer Schlüssel
  4. Skript-ForeignKeys.sql – Anlegen der Fremdschlüssel
  5. Skript-Anpassung.sql – Änderung der Daten nach den vorstehenden Änderungen
  6. Skript-Testdaten.sql – Anlegen „vieler“ weiterer Daten

Wichtige Hinweise[Bearbeiten]

Zum Erstellen der Beispieldatenbank

Wenn es zu Ihrer Version des DBMS keine vorbereitete Skript-Datei gibt, dann holen Sie sich eine andere (möglichst für eine ähnliche Version) und gehen Sie genauso vor. In diesem Fall sind Fehler beim Erzeugen der Datenbank zu erwarten. Dann müssen Sie nach der Beschreibung des betreffenden SQL-Dialekts im Skript nach und nach alle Fehler beseitigen, bis die Tabellen und Datensätze gespeichert werden.

Nachträgliche Änderungen der Daten

⮞ Diese Änderungen dürfen erst an den entsprechenden Stellen in diesen Kapiteln ausgeführt werden; vorher fehlt die notwendige Sachkenntnis. Außerdem muss – wie dort erläutert – die Reihenfolge der Änderungen beachtet werden, und vergessen Sie nicht die Datensicherung vorher und zwischendurch.

Achtung.svg

Diese Änderungen sind teilweise sehr komplex. Gehen Sie deshalb immer schrittweise vor:

  1. Machen Sie ein Backup der Datenbank mit dem vorherigen, fehlerfreien Bestand.
  2. Führen Sie den nächsten SQL-Befehl aus (niemals das vollständige Skript!).
  3. Kontrollieren Sie das Ergebnis.
  4. Beim Auftreten von Fehlern ist das letzte Backup zurückzuholen (Restore).
Probleme und Fehler bei den Skripten

Wegen der Vielfalt der DBMS und der Versionen sind Fehler in den vorbereiteten Skripten leider nicht zu vermeiden.

Attention green.svg

Bitte arbeiten Sie mit!
Die Autoren und die künftigen Leser sind Ihnen deshalb sehr dankbar, wenn Sie in einem solchen Fall die fehlerfreie Fassung der sql-Datei mit entsprechenden Erläuterungen auf der Diskussionsseite zur Verfügung stellen. Damit helfen Sie bei der Verbesserung und der Erweiterung dieses Buches.
Anmerkungen
  1. Geeignet sind z. B. folgende Programme:
    • Unter Windows: Notepad++ – aber nicht die Windows-eigenen Editor oder Notepad
    • Unter Linux wahlweise: ed vi vim
    • Unter MacOS: ed vi TextEdit
  2. Bei Linux und MacOS ist Unicode sowieso Standard. Bei Windows wird die Einstellung "UTF-8 (ohne BOM)" benötigt; bei Notepad++ ist sie unter dem Menü-Befehl „Kodierung“ zu finden. Siehe Erläuterungen bei Wikipedia: UTF-8 sowie BOM