DB2 Connect Benutzerhandbuch
Standardmäßig ordnet DB2 Connect die SQLCODE-Werte und Token aller IMB
Host- oder AS/400-Datenbank-Server den entsprechenden SQLCODE-Werten von DB2
UDB zu. Die folgenden Dateien sind genaue Kopien der standardmäßigen
SQLCODE-Zuordnung:
- dcs1dsn.map
- Zuordnung von SQLCODE-Werten für DB2 für MVS/ESA und DB2 UDB für OS/390
- dcs1ari.map
- Zuordnung von SQLCODE-Werten für DB2 für VSE & VM
- dcs1qsq.map
- Zuordnung von SQLCODE-Werten für DB2 UDB für AS/400
Bei DB2-Systemen für OS/2 und UNIX-Systeme ist keine Zuordnung
erforderlich.
Wenn die Standard-SQLCODE-Zuordnung überschrieben werden soll oder ein
Host- oder AS/400-Datenbank-Server verwendet wird, der nicht über eine
SQLCODE-Zuordnung verfügt (ein Datenbank-Server, der nicht von IBM stammt),
kann eine der Dateien kopiert und als Grundlage für die neue
SQLCODE-Zuordnungsdatei verwendet werden. Wenn die Datei nicht direkt
editiert, sondern kopiert wird, ist sichergestellt, daß die ursprüngliche
SQLCODE-Zuordnung später immer noch zur Verfügung steht.
Der Name der neuen SQLCODE-Zuordnungsdatei wird in der
Parameterzeichenfolge des DCS-Verzeichnisses oder des Objekts für die
DCE-Leitweginformationen angegeben. Informationen zur Aktualisierung
des DCS-Verzeichnisses finden Sie in Kapitel 6, Aktualisieren von Datenbankverzeichnissen. Informationen zur Verwendung von DCE finden Sie in Anhang D, Verwenden der DCE Verzeichnisservices.
Zuordnungsdateien sind ASCII-Dateien, die mit einem ASCII-Editor erstellt
und editiert werden können. Bei der Erstinstallation wird die
Zuordnungsdatei im Verzeichnis map im Installationspfad
gespeichert.
Die Datei kann folgende besondere Zeilenarten enthalten:
- &&
- Der logische Dateibeginn. Alle Zeilen vor dem ersten Auftreten von
&& werden als unformatierte Kommentare angesehen und ignoriert.
Wenn in der Datei nach && keine Angaben enthalten sind, wird keine
SQLCODE-Zuordnung durchgeführt. Die SQLCODE-Zuordnung kann auch mit dem
Parameter NOMAP ausgeschaltet werden (siehe oben).
- *
- Ein Stern als erstes Zeichen in einer Zeile kennzeichnet einen
Kommentar.
- W
- Ein W als einziges Zeichen in einer Zeile zeigt an, daß
Warnungsmarkierungen neu zugeordnet werden sollten. Standardmäßig
werden die ursprünglichen Warnungsmarkierungen übergeben. Das W muß in
Großschreibung angegeben werden.
Alle anderen Zeilen nach && müssen entweder leer sein oder
Zuordnungsanweisungen im folgenden Format enthalten:
eingabecode [, ausgabecode [, token-liste]]
eingabecode steht für eine der folgenden Angaben:
- sqlcode
- Der SQLCODE-Wert von dem Host- oder AS/400-Datenbank-Server.
- U
- Alle nicht definierten negativen SQLCODE-Werte (die nicht in dieser Datei
aufgelisteten Codes) werden dem angegebenen ausgabecode
zugeordnet. Wenn kein ausgabecode in dieser Zeile angegeben
ist, wird der ursprüngliche SQLCODE verwendet. Das Zeichen muß in
Großschreibung angegeben werden.
- P
- Alle nicht definierten positiven SQLCODE-Werte (die nicht in dieser Datei
aufgelisteten Codes) werden dem angegebenen ausgabecode
zugeordnet. Wenn kein ausgabecode in dieser Zeile angegeben
ist, wird der ursprüngliche SQLCODE verwendet. Das Zeichen muß in
Großschreibung angegeben werden.
- ccnn
- Der SQLSTATE-Klassencode vom Host- oder
AS/400-Datenbank-Server.nn ist einer der folgenden
Werte:
- 00
- Nicht weiter qualifizierte, erfolgreiche Beendigung
- 01
- Warnung
- 02
- Keine Daten
- 21
- Ungültige Beziehungsart
- 22
- Datenfehler
- 23
- Ungültige Integritätsbedingung
- 24
- Ungültiger Cursor-Status
- 26
- Ungültige ID für eine SQL-Anweisung
- 40
- Zurücksetzung der Transaktion
- 42
- Ungültiger Zugriff
- 51
- Ungültiger Anwendungsstatus
- 55
- Objekt nicht in erforderlichem Status
- 56
- Sonstiger SQL- oder Produktfehler
- 57
- Ressource nicht verfügbar oder Bedienereingriff
- 58
- Systemfehler
Der angegebene ausgabecode wird für alle SQLCODE-Werte mit dem
betreffenden Klassencode verwendet, die nicht ausdrücklich in der
Zuordnungsdatei angegeben sind. Wenn kein ausgabecode in
dieser Zeile angegeben ist, wird der ursprüngliche SQLCODE sich selbst
zugeordnet, wobei keine Token kopiert werden.
Die Zeichen cc müssen in Kleinschreibung angegeben
werden.
Wenn der gleiche Eingabecode mehrmals in der Zuordnungsdatei aufgeführt
ist, wird das erste Auftreten verwendet.
ausgabecode ist der ausgegebene SQLCODE-Wert. Wenn kein
Wert angegeben wird, wird der ursprüngliche SQLCODE verwendet.
Wenn ein Ausgabecode angegeben wird, kann auch eine der folgenden Angaben
gemacht werden:
- (s)
- Der eingegebene SQLCODE sowie die Produkt-ID (ARI, DSN oder QSQ) werden in
das Nachrichten-Token-Feld des SQL-Kommunikationsbereichs geschrieben.
Der ursprüngliche SQLCODE wird als einziges Token zurückgegeben.
Diese Option dient zum Verarbeiten nicht definierter SQLCODE-Werte mit
Ausnahme von +965 und -969. Wenn der ausgabecode +965 oder
-969 ist, umfaßt die im Feld SQLERRMC des SQL-Kommunikationsbereichs
zurückgegebene Token-Liste den ursprünglichen SQLCODE, gefolgt von der
Produkt-ID, gefolgt von der ursprünglichen Token-Liste.
Das Zeichen s muß in Kleinschreibung angegeben werden.
- (token-liste)
- Eine Liste durch Kommas getrennter Token. Wenn ein bestimmtes Token
übersprungen werden soll, darf nur ein Komma angegeben werden. Die
Angabe (,t2,,t4) bedeutet z. B., daß das
erste und dritte Ausgabe-Token leer sind.
Jedes Token besteht aus einer Zahl (n), der wahlweise c
vorangeht und auf die wahlweise c oder i folgt.
Die Angaben werden wie folgt interpretiert:
- c
- Der Datentyp des Tokens an dieser Stelle ist CHAR (Standardwert).
Wenn c vor n steht, verweist es auf das Eingabe-Token,
wenn es nach n steht, verweist es auf das Ausgabe-Token. Das
Zeichen c muß in Kleinschreibung angegeben werden.
- i
- Der Datentyp des Tokens an dieser Stelle ist INTEGER. Wenn
i nach n steht, verweist es auf das Ausgabe-Token.
i sollte nicht vor n stehen, weil
Datenbank-Server-Produkte auf dem IBM Host oder System IBM AS/400 nur Token
mit dem Datentyp CHAR unterstützen. Das Zeichen i muß in
Kleinschreibung angegeben werden.
- n
- Eine Zahl oder Zahlen, die angibt bzw. angeben, welche
Datenbank-Server-Token auf dem Host oder System IBM AS/400 verwendet
werden. Sie werden in der Reihenfolge angeordnet, die für die
Plazierung im SQL-Kommunikationsbereich für die Ausgabe gewünscht wird.
Beispiel: Der Host- oder AS/400-Datenbank-Server gibt unter Umständen
zwei Token zurück: 1 und 2. Wenn Token 2 im
SQL-Kommunikationsbereich für die Ausgabe vor Token 1 erscheinen soll, muß
(2,1) angegeben werden.
Mehrere Token-Nummern können zu einem Ausgabe-Token mit dem Datentyp CHAR
kombiniert werden, indem sie durch Punkte miteinander verbunden werden.
Zur Trennung von Ausgabe-Token werden Kommas verwendet. Wenn kein
Token vor einem Komma angegeben ist, enthält der SQL-Kommunikationsbereich für
die betreffende Stelle kein Ausgabe-Token. Alle Token, die im
SQL-Kommunikationsbereich für die Ausgabe nach dem letzten angegebenen Token
erscheinen, werden einem leeren Token zugeordnet.
Abbildung 6 zeigt ein Beispiel einer SQLCODE-Zuordnungsdatei
Abbildung 6. Eine SQLCODE-Zuordnungsdatei
&&
-007 , -007 , (1)
-010
-060 , -171 , (2)
...
-204 , -204 , (c1.2c)
...
-633 , -206 , (,c1i)
-30021 , -30021 , (c1c,c2c)
cc00 , +000
...
U , -969 , (s)
P , +965 , (s)
|
Nachfolgend werden die einzelnen Zuordnungsanweisungen in der Datei
beschrieben:
- Der SQLCODE wird von -007 bis -007 zugeordnet. Das erste vom Host-
oder AS/400-Datenbank-Server empfangene Eingabe-Token wird als erstes
Ausgabe-Token verwendet und hat standardmäßig den Datentyp CHAR. Es
werden keine anderen Token übertragen.
- Der SQLCODE wird von -010 bis -010 zugeordnet (es wird kein
Ausgabe-SQLCODE angegeben). Es werden keine Token im
SQL-Kommunikationsbereich für die Ausgabe gespeichert.
- Der SQLCODE wird von -060 bis -171 zugeordnet. Das erste vom Host-
oder AS/400-Datenbank-Server empfangene Eingabe-Token wird gelöscht.
Das zweite Token wird im SQL-Kommunikationsbereich für die Ausgabe als erstes
Token verwendet und hat den Datentyp CHAR. Es gibt kein zweites Token
im SQL-Kommunikationsbereich für die Ausgabe.
- Der SQLCODE wird von -204 bis -204 zugeordnet. Das erste und zweite
vom Host- oder AS/400-Datenbank-Server empfangene Token haben den Datentyp
CHAR. Diese beiden Eingabe-Token werden zu einem Ausgabe-Token mit dem
Datentyp CHAR kombiniert, das zum ersten Ausgabe-Token im
SQL-Kommunikationsbereich wird.
- Der SQLCODE wird von -633 bis -206 zugeordnet. Das erste vom Host-
oder AS/400-Datenbank-Server empfangene Eingabe-Token hat den Datentyp
CHAR. Es wird in den Typ INTEGER umgesetzt und als zweites Token im
SQL-Kommunikationsbereich für die Ausgabe verwendet. Das erste Token im
SQL-Kommunikationsbereich für die Ausgabe ist ein leeres Token, was durch ein
Komma angedeutet wird.
- Der SQLCODE wird von -30021 bis -30021 zugeordnet. Das erste und
zweite Eingabe-Token, die vom Host- oder AS/400-Datenbank-Server empfangen
werden, haben den Datentyp CHAR und werden als erstes und zweites Token im
SQL-Kommunikationsbereich für die Ausgabe verwendet.
- Alle SQLCODE-Werte in SQL-Kommunikationsbereichen mit SQLSTATE-Werten in
der Klasse 00 werden SQLCODE +000 zugeordnet.
- Für alle nicht definierten SQLCODE-Werte wird -969 zugeordnet.
Diese Option sollte nur verwendet werden, wenn alle Codes, die zugeordnet
werden können, einschließlich derer, die identisch sind und keine Zuordnung
benötigen, aufgelistet sind. Die Option (s) gibt an, daß die
Token-Liste, die im Feld SQLERRMC des SQL-Kommunikationsbereichs zurückgegeben
werden soll, den ursprünglichen SQLCODE enthält, gefolgt von dem Produkt, in
dem der Fehler auftrat, gefolgt von der ursprünglichen Token-Liste.
Wenn der Eintrag U nicht vorgenommen wurde, werden alle nicht
aufgeführten Codes ohne Zuordnung übergeben.
- Für alle nicht definierten positiven SQLCODE-Werte wird +965
zugeordnet. Diese Option sollte nur verwendet werden, wenn alle Codes,
die zugeordnet werden können, einschließlich derer, die identisch sind und
keine Zuordnung benötigen, aufgelistet sind. Die Option (s)
gibt an, daß die Token-Liste, die im Feld SQLERRMC des
SQL-Kommunikationsbereichs zurückgegeben werden soll, den ursprünglichen
SQLCODE enthält, gefolgt von dem Produkt, in dem die Warnung auftrat, gefolgt
von der ursprünglichen Token-Liste. Wenn der Eintrag P nicht
vorgenommen wurde, werden alle nicht aufgeführten positiven Codes ohne
Zuordnung übergeben.
[ Seitenanfang | Vorherige Seite | Nächste Seite | Inhaltsverzeichnis | Index ]