WebSphere Message Brokers-Beispielprogramme können auf einem System mit oder ohne DB2 ausgeführt werden. Auf einem Computer, auf dem DB2 nicht installiert ist, können die Beispielprogramme eine Derby-Datenbank verwenden; dies bedeutet jedoch, dass die DB2-Steuerzentrale nicht installiert ist und nicht verwendet werden kann, um den Inhalt der Datenbanktabellen des Beispielprogramms anzuzeigen.
Um den Inhalt einer Derby-Datenbank anzuzeigen, müssen Sie die Befehlszeile 'ij' verwenden. Im Folgenden finden Sie ein Script, das zur Ausführung einer ij-Befehlszeile verwendet werden kann, die so konfiguriert ist, dass über eine WebSphere Message Brokers-Befehlskonsole eine Verbindung zu Derby-Datenbanken hergestellt wird. Außerdem werden einige generische SQL-Anweisungen bereitgestellt, mit denen Sie den Inhalt der Datenbanken anzeigen können.
Diese Stapeldatei legt den erforderlichen Klassenpfad fest und startet die Derby-Befehlszeilenschnittstelle 'ij'. Die Stapeldatei stellt außerdem die Verbindung zur angegebenen Datenbank her.
Gehen Sie folgendermaßen vor, um die Stapeldatei zu erstellen:
@ECHO OFF SETLOCAL IF "%2"=="" ( echo Syntax: ij [DB Name] [Default Schema {UserID}] [Port Number=1527] ) ELSE ( echo To exit the ij environment, type: exit; set CLASSPATH=%MQSI_FILEPATH%\classes\db2jcc.jar;%MQSI_FILEPATH%\classes\db2jcc_license_c.jar;%MQSI_FILEPATH%\classes\derby.jar;%MQSI_FILEPATH%\classes\derbynet.jar;%MQSI_FILEPATH%\classes\derbytools.jar;%CLASSPATH% IF "%3"=="" ( java -Dij.driver=com.ibm.db2.jcc.DB2Driver -Dij.connection.%1=jdbc:derby:net://localhost:1527/%1 -Dij.user=%2 -Dij.password=APP org.apache.derby.tools.ij ) ELSE ( java -Dij.driver=com.ibm.db2.jcc.DB2Driver -Dij.connection.%1=jdbc:derby:net://localhost:%3/%1 -Dij.user=%2 -Dij.password=APP org.apache.derby.tools.ij ) ) ENDLOCAL
Sie können die ij-Befehlszeile jetzt in einer Befehlskonsole von WebSphere Message Brokers starten.
Um die ij-Befehlszeile in einer Befehlskonsole von WebSphere Message Brokers zu starten, geben Sie Folgendes ein:
mqsiij Datenbankname Schemaname (Portnummer)
Dabei ist
Wenn Sie die ij-Befehlszeile gestartet haben, können Sie an der ij-Eingabeaufforderung SQL-Befehle eingeben.
Bevor Sie die folgenden SQL-Befehle ausführen können, müssen Sie das Script 'mqsiij.bat' über eine Befehlskonsole ausgeführt haben, damit eine Verbindung zur Datenbank mit dem richtigen Schemanamen hergestellt wird. Dies bedeutet, dass die Befehlskonsole die ij-Befehlszeile ausführt, in die Sie anschließend die folgenden SQL-Befehle eingeben können. Vergewissern Sie sich, dass jede SQL-Anweisung mit einem Semikolon (;) endet.
Um alle Tabellen in der Datenbank aufzulisten, geben Sie Folgendes ein:
SELECT TABLENAME from SYS.SYSTABLES where TABLETYPE='T';
Um alle Spalten einer Tabelle anzuzeigen, geben Sie Folgendes (in einer einzigen Zeile) ein:
SELECT DISTINCT COLUMNNAME, COLUMNNUMBER from SYS.SYSTABLES, SYS.SYSCOLUMNS where SYS.SYSCOLUMNS.REFERENCEID=SYS.SYSTABLES.TABLEID and SYS.SYSTABLES.TABLENAME='Tabellenname' order by SYS.SYSCOLUMNS.COLUMNNUMBER;
Dabei steht Tabellenname für den Namen der Tabelle.
Um alle Daten in einer Tabelle anzuzeigen, geben Sie Folgendes ein:
SELECT * from Tabellenname;
Dabei steht Tabellenname für den Namen der Tabelle, die die Daten enthält, die Sie anzeigen möchten.
Sie können die maximale Breite einer angezeigten Spalte begrenzen, damit die Ausgabe der SQL-Anweisungen besser lesbar ist. In der Ausgabe gibt ein Et-Zeichen (&) an, dass ein Datenwert abgeschnitten wurde. Legen Sie als Wert für die Spaltenbreite 15 bis 30 fest.
Geben Sie folgenden Befehl ein, um die maximale Breite einer angezeigten Spalte zu begrenzen:
MAXIMUMDISPLAYWIDTH 30;
Dabei ist 30 die Spaltenbreite, die Sie ändern können. Die maximale Spaltenbreite wird dann für alle nachfolgenden SQL-Befehle festgelegt, die Sie eingeben. Sie können diesen Befehl später jederzeit ausführen, um die maximale Spaltenbreite zu ändern.