Datenbank erstellen und mit Daten füllen

Bei den folgenden Anweisungen wird davon ausgegangen, dass Sie DB2 Universal Database verwenden. Berücksichtigen Sie Folgendes beim Erstellen und Zugreifen auf die Tabellen der Datenbank RESERVDB:

Mit dem folgenden Script wird die Datenbank für das 'Airline Reservations'-Beispiel erstellt und mit Daten gefüllt:

CREATE DB RESERVDB
CONNECT TO RESERVDB
BIND '%DB2TEMPDIR%\bnd\@db2cli.lst' blocking all grant public
CATALOG SYSTEM ODBC DATA SOURCE RESERVDB
CONNECT RESET
CONNECT TO RESERVDB
DROP TABLE XMLFLIGHTTB
CREATE TABLE XMLFLIGHTTB (FLIGHTDATE CHAR(8) NOT NULL, FLIGHTNO CHAR(5) NOT NULL, ECONOMICCLASS INTEGER NOT NULL, FIRSTCLASS INTEGER NOT NULL, TOTALECONOMIC INTEGER NOT NULL, TOTALFIRST INTEGER NOT NULL, ECONOMICPRICE INTEGER NOT NULL, FIRSTPRICE INTEGER NOT NULL, STARTPOINT CHAR(20) NOT NULL, ENDPOINT CHAR(20) NOT NULL, RESERVATIONSEQNO INTEGER NOT NULL, CONSTRAINT FLIGHT_UNIQ UNIQUE(FLIGHTDATE, FLIGHTNO))
INSERT INTO XMLFLIGHTTB VALUES('20030218', 'CA937', 0, 0, 200, 50, 200, 300, 'BEIJING', 'LONDON', 0)
INSERT INTO XMLFLIGHTTB VALUES('20030525', 'BA039', 0, 0, 180, 40, 220, 320, 'LONDON', 'BEIJING', 0)
INSERT INTO XMLFLIGHTTB VALUES('20030525', 'CA937', 0, 0, 200, 50, 200, 300, 'BEIJING', 'LONDON', 0)
INSERT INTO XMLFLIGHTTB VALUES('20030219', 'BA039', 0, 0, 180, 40, 220, 320, 'LONDON', 'BEIJING', 0)
DROP TABLE XMLPASSENGERTB
CREATE TABLE XMLPASSENGERTB (LASTNAME CHAR(20) NOT NULL, FIRSTNAME CHAR(20) NOT NULL, FLIGHTNO CHAR(5) NOT NULL, FLIGHTDATE CHAR(8) NOT NULL, CLASSTYPE CHAR(1) NOT NULL, RESERVATIONNO VARCHAR(40) NOT NULL, PRIMARY KEY(RESERVATIONNO))
CONNECT RESET
TERMINATE

Wenn Sie das Script ausführen, führt es die folgenden Tasks aus:

So erstellen Sie die Datenbank und füllen Sie sie mit Daten:

  1. Kopieren Sie das Script, und fügen Sie es in einen Texteditor (beispielsweise Notepad) ein, und speichern Sie die Datei. Dabei können Sie einen Dateinamen Ihrer Wahl verwenden. In den nachfolgenden Anweisungen wird der Dateiname 'airlinedb2.sql' verwendet.
  2. Geben Sie in einem DB2-Befehlsfenster folgenden Befehl ein, um sicherzustellen, dass DB2 gestartet ist:

    db2start

  3. Wechseln Sie in einem DB2-Befehlsfenster in das Verzeichnis mit der Datei 'airlinedb2.sql', und geben Sie folgenden Befehl ein:

    db2 -vf airlinedb2.sql

    Warten Sie das Ende des Scripts ab. Wenn Sie das Script zum ersten Mal ausführen, wird folgende Nachricht angezeigt, wobei DB2ADMIN für Ihren Benutzernamen und XMLPASSENGERTB für den Tabellennamen steht:

    DB21034E The command was processed as an SQL statement because it was
          not a valid Command Line Processor command (DB21034E Der Befehl wurde als SQL-Anweisung verarbeitet,
    da es sich nicht um einen gültigen Befehl für den Befehlszeilenprozessor handelte). During SQL processing it returned: SQL0204N "DB2ADMIN.XMLPASSENGERTB" is an undefined name. (Während der SQL-Verarbeitung wurde Folgendes zurückgegeben: SQL0204N "DB2ADMIN.XMLPASSENGERTB" ist ein nicht definierter Name). SQLSTATE=42704
    Ignorieren Sie diese Nachrichten. Die Nachrichten werden angezeigt, weil das Script versucht, die möglicherweise bereits vorhandenen Tabellen XMLFLIGHTTB und XMLPASSENGERTB zu löschen, bevor sie neu erstellt werden. Wenn das Script zum ersten Mal ausgeführt wird, kann es die Tabellen aber nicht finden.

  4. Starten Sie die DB2-Steuerzentrale, und überprüfen Sie, ob die Datenbank RESERVDB und die Tabellen XMLFLIGHTTB und XMLPASSENGERTB erstellt wurden.

Symbol Hauptseite   Zurück zu "Das Beispielprogramm 'Airline Reservations' erstellen"