Brukerhåndbok
Standardverdien er at DB2 Connect konverterer SQLCODE-verdier og
symboler fra de ulike IBM-verts- eller AS/400-databasetjenerne til de riktige
SQLCODE-verdiene for DB2 UDB. Disse filene er kopier av
SQLCODE-konverteringen som er standard:
- dcs1dsn.map
- Konverterer SQLCODE-verdier for DB2 for MVS/ESA og DB2 UDB
- dcs1ari.map
- Konverterer SQLCODE-verdier for DB2 for VSE & VM
- dcs1qsq.map
- Konverterer SQLCODE-verdier for DB2 UDB for AS/400
Det er ikke nødvendig med konvertering for OS/2- og UNIX-baserte
DB2-systemer.
Hvis du vil overstyre SQLCODE-konverteringen som er standard, eller hvis du
bruker en verts- eller AS/400-databasetjener som ikke har SQLCODE-konvertering
(en ikke-IBM-databasetjener), kan du kopiere en av disse filene og bruke den
som basis for den nye SQLCODE-konverteringsfilen. Ved å kopiere filen i
stedet for å redigere den direkte har du alltid muligheten til å referere til
den opprinnelige SQLCODE-konverteringen hvis det er nødvendig.
Oppgi filnavnet for den nye SQLCODE-konverteringsfilen i parameterstrengen
i DCS-katalogen eller i objektet for DCE-ruteopplysninger. Hvis du
ønsker flere opplysninger om hvordan du oppdaterer DCS-katalogen, leser du Oppdatere databasekataloger. Hvis du ønsker flere opplysninger om hvordan du
bruker DCE, leser du Tillegg D, Bruke DCE-katalogtjenester.
Hver enkelt konverteringsfil er en ASCII-fil, som blir opprettet og
redigert ved hjelp av et ASCII-redigeringsprogram. Under den første
installeringen blir filen lagret i katalogen map i
installeringsbanen.
Filen kan inneholde disse spesielle linjetypene:
- &&
- Den logiske begynnelsen på filen. Alle linjene før den første
forekomsten av && blir betraktet som kommentarer i fritt format, og
blir oversett. Hvis filen ikke inneholder noen data etter &&,
blir det ikke utført noen SQLCODE-konvertering. Du kan også slå av
SQLCODE-konvertering ved hjelp av NOMAP-parameteren (se ovenfor).
- *
- Angir en kommentar hvis den er det første tegnet på en linje.
- W
- Angir at advarselsmeldinger bør konverteres på nytt hvis dette er det
eneste tegnet på en linje. Standardverdien er at de opprinnelige
advarselsmeldingene blir sendt. W må være skrevet med stor
bokstav.
Alle de andre linjene etter && må være tomme eller
konverteringssetninger med dette formatet:
inndatakode [, utdatakode [, symbolliste]]
inndatakode representerer en av disse tingene:
- sqlcode
- SQLCODE-verdien fra verts- eller AS/400-databasetjeneren.
- U
- Alle de udefinerte negative SQLCODE-verdiene (de som ikke står oppført i
denne filen) blir konvertert til den oppgitte utdatakoden.
Hvis det ikke er oppgitt noen utdatakode på denne linjen, blir den
opprinnelige SQLCODE-verdien brukt. Dette tegnet må være skrevet med
stor bokstav.
- P
- Alle de udefinerte positive SQLCODE-verdiene (de som ikke står oppført i
denne filen) blir konvertert til den oppgitte utdatakoden.
Hvis det ikke er oppgitt noen utdatakode på denne linjen, blir den
opprinnelige SQLCODE-verdien brukt. Dette tegnet må være skrevet med
stor bokstav.
- ccnn
- SQLCODE-klassekoden fra verts- eller AS/400-databasetjeneren.
nn er en av disse verdiene:
- 00
- Ukvalifisert vellykket fullføring
- 01
- Advarsel
- 02
- Ingen data
- 21
- Kardinalitetsovertredelse
- 22
- Dataunntak
- 23
- Begrensningsovertredelse
- 24
- Ugyldig pekerstatus
- 26
- Ugyldig ID for SQL-setning
- 40
- Tilbakestilling av transaksjonen
- 42
- Tilgangsovertredelse
- 51
- Ugyldig applikasjonsstatus
- 55
- Objekt oppfyller ikke nødvendig forutsetning
- 56
- Forskjellige SQL- eller produktrestriksjoner
- 57
- Ressurs ikke tilgjengelig eller operatørinngrep
- 58
- Systemfeil
Den oppgitte utdatakoden blir brukt for alle SQLCODE-verdiene med
denne klassekoden som ikke er eksplisitt oppgitt i konverteringsfilen.
Hvis det ikke er oppgitt noen utdatakode på denne linjen, blir den
opprinnelige SQLCODE-verdien konvertert til seg selv uten at noen symboler
blir kopiert over.
Tegnene cc må være skrevet med små bokstaver.
Hvis den samme inndatakoden blir vist flere ganger i
konverteringsfilen, blir den første forekomsten brukt.
utdatakode representerer SQLCODE-utdataverdien. Hvis det
ikke er oppgitt noen verdi, blir den opprinnelige SQLCODE-verdien
brukt.
Hvis du oppgir en utdatakode, kan du også oppgi en av disse verdiene:
- (s)
- SQLCODE-inndataverdien pluss produkt-IDen (ARI, DSN eller QSQ) blir lagt i
SQLCA-meldingssymbolfeltet.
Den opprinnelige SQLCODE-verdien blir returnert som det eneste
symbolet. Dette alternativet skal håndtere udefinerte SQLCODE-verdier,
med unntak av +965 og -969. Hvis +965 eller -969 er
utdatakoden, omfatter symbollisten som blir returnert i
SQLERRMC-feltet for SQLCA-verdien, den opprinnelige SQLCODE-verdien,
etterfulgt av produkt-IDen, etterfulgt av den opprinnelige
symbollisten.
Tegnet s må være skrevet med liten bokstav.
- (symbolliste)
- En liste over symboler som er atskilt med kommaer. Oppgi bare et
komma hvis du vil hoppe over et bestemt symbol. Formatet
(,t2,,t4) betyr for eksempel at det første og tredje
utdatasymbolet er null.
Hvert symbol har formatet til et tall (n), som det kan stå en
c foran og en c eller i etter. Det
blir tolket på denne måten:
- c
- Datatypen for symbolet i denne posisjonen er CHAR
(standardverdien). Hvis c kommer før n, refererer
det til inndatasymbolet. Hvis det kommer etter n, refererer
det til utdatasymbolet. Tegnet c må være skrevet med liten
bokstav.
- i
- Datatypen for symbolet i denne posisjonen er INTEGER. Hvis
i kommer etter n, refererer det til utdatasymbolet.
i bør ikke komme før n, fordi IBM-verts eller
AS/400-databasetjenerprodukter bare støtter CHAR-symboler. Tegnet
i må være skrevet med liten bokstav.
- n
- Et eller flere tall som angir hvilke symboler for verts- eller
AS/400-databasetjener som blir brukt. De blir ordnet i rekkefølgen som
er ønsket i SQLCA-utdataverdien. Tallverdien angir symbolet for verts-
eller AS/400-databasetjeneren, mens rekkefølgen viser rekkefølgen symbolene
blir vist i, i SQLCA-verdien.
Verts- eller AS/400-databasetjeneren kan for eksempel returnere to
symboler, 1 og 2. Hvis du vil at symbol 2 skal vises før symbol 1 i
SQLCA-utdataverdien, oppgir du (2,1).
Flere symboltall kan kombineres for å danne et CHAR-utdatasymbol ved å
koble dem sammen med punktum.
Utdatasymbolene blir skilt med kommaer. Hvis det ikke er oppgitt noe
symbol før et komma, blir det ikke tatt med noe utdatasymbol i SQLCA-verdien
for den posisjonen. Alle symboler som blir vist i SQLCA-utdataverdien
som etterfølger det sist oppgitte symbolet, blir konvertert til et
nullsymbol.
I Figur 6 ser du et eksempel på en SQLCODE-konverteringsfil.
Figur 6. En SQLCODE-konverteringsfil
&&
-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)
|
Hver konverteringssetning i filen blir beskrevet på denne måten:
- SQLCODE-verdien blir konvertert fra -007 til -007. Det første
inndatasymbolet som ble mottatt fra verts- eller AS/400-databasetjeneren, blir
brukt som det første utdatasymbolet, og standardverdien er CHAR. Ingen
andre symboler blir overført.
- SQLCODE-verdien blir konvertert fra -010 til -010 (ingen
SQLCODE-utdataverdi blir oppgitt). Ingen symboler blir lagt i
SQLCA-utdataverdien.
- SQLCODE-verdien blir konvertert fra -060 til -171. Det første
inndatasymbolet som ble mottatt fra verts- eller AS/400-databasetjeneren, blir
slettet. Det andre blir brukt som det første symbolet i
SQLCA-utdataverdien, og det er CHAR. Det finnes ikke noe annet symbol i
SQLCA-utdataverdien.
- SQLCODE-verdien blir konvertert fra -204 til -204. Det første og
det andre symbolet som ble mottatt fra verts- eller AS/400-databasetjeneren,
er CHAR. Disse to inndatasymbolene blir kombinert for å danne et
CHAR-utdatasymbol, som blir det første utdatasymbolet i SQLCA-verdien.
- SQLCODE-verdien blir konvertert fra -633 til -206. Det første
inndatasymbolet som ble mottatt fra verts- eller AS/400-databasetjeneren, er
CHAR. Det blir konvertert til INTEGER og blir brukt som det andre
symbolet i SQLCA-utdataverdien. Det første symbolet i SQLCA-verdien, er
null, og det blir angitt av et komma.
- SQLCODE-verdien blir konvertert fra -30021 til -30021. Det første
og det andre inndatasymbolet som ble mottatt fra verts- eller
AS/400-databasetjeneren, er CHAR, og de blir brukt som det første og andre
symbolet i SQLCA-verdien.
- Alle SQLCODE-verdiene i SQLCA-verdier med SQLSTATE-verdier i klassen 00
blir konvertert til SQLCODE +000.
- Alle udefinerte SQLCODE-verdier blir konvertert til -969. Dette
alternativet bør bare brukes hvis alle de konverterbare kodene blir vist,
inkludert de som er identiske og som ikke behøver noen konvertering.
Alternativet (s) angir at symbollisten som blir returnert i
SQLERRMC-feltet for SQLCA-verdien, omfatter den opprinnelige SQLCODE-verdien,
etterfulgt av produktet feilen oppstod i, etterfulgt av den opprinnelige
symbollisten. Hvis alternativet U ikke er oppgitt, blir alle
kodene som ikke er på listen, overført uten noen konvertering.
- Alle udefinerte positive SQLCODE-verdier blir konvertert til +965.
Dette alternativet bør bare brukes hvis alle de konverterbare kodene blir
vist, inkludert de som er identiske og som ikke behøver noen
konvertering. Alternativet (s) angir at symbollisten som
blir returnert i SQLERRMC-feltet for SQLCA-verdien, omfatter den opprinnelige
SQLCODE-verdien, etterfulgt av produktet advarselen oppstod i, etterfulgt av
den opprinnelige symbollisten. Hvis alternativet P ikke er
oppgitt, blir alle de positive kodene som ikke er på listen, overført uten
noen konvertering.
[ Øverst på siden | Forrige side | Neste side | Innholdsfortegnelse | Stikkordregister ]