Oracle databaser støtte et bredt spekter av kodingsvalg , inkludert nasjonale, internasjonale og leverandør - spesifikke koder. Database administratorer kan tilpasse databaser for å passe bestemte kodingsvalg eller tegnsett. Når spesialtegn må lagres i en database tabell , et alfanumerisk representasjon kjent som heksadesimale, eller Unicode , er verdien som brukes til å representere et tegn. Unicode-verdien som definerer den greske bokstaven delta er " 0394 " og verdien som definerer det latinske tilsvarende er " 018D . " Du trenger
Oracle SQL * Plus
Unicode tegnsett
Vis flere instruksjoner
en
Åpne en SQL * Plus kommandolinjen økt.
2
ut om databasen er konfigurert for Unicode-støtte . Skriv inn følgende spørring på kommandolinjen for å vise hvilke tegnsett er for tiden definert for databasen:
SELECT verdi fra SYS.NLS_CHARACTERSET_PARAMETERSWHERE PARAMETER = ' NLS_CHARACTERSET ';
der " VERDI " angir gjeldende tegnsett.
3
endre tegnsettet til enten UTF - 8 eller UTF - 16 hvis og bare hvis den nye karakteren type er en streng supersett av den gamle. Kontroller at en full backup av databasen eksisterer før du endrer tegnsett , bruk følgende uttalelse som et eksempel : en
ALTER DATABASE tegnsett AL32UTF8 ;
hvor verdien " AL32UTF8 " angir UTF - 8-koding ordningen. Erstatt " AL32UTF8 " med " AL16UTF16 " hvis du bestemmer deg for å bruke UTF -16 .
4
Kontroller at feltet som vil holde Unicode-verdien er en datatype CHAR , VARCHAR2 , nchar eller clob . Endre datatypen for feltet , om nødvendig , slik at feltet for å holde en Unicode-verdien .
5
Påfør " UNISTR " funksjon for å sette den greske eller latinske delta tegnet inn det angitte feltet . Bruk heksadesimalstreng '0394 ' for den greske bokstaven eller '018D ' for det latinske tilsvarende. Skriv inn følgende utsagn inn i kommandolinjen : en
INSERT INTO MY_TABLE ( UNICD_COL ) VALUES ( UNISTR (' \\ 0394 '); COMMIT ;
der " MY_TABLE " er navnet på den database tabellen , " UNICD_COL " er navnet på feltet og " \\ 0394 " er Unicode-verdien for den greske bokstaven delta .
6
Velg kolonnen fra bordet for å kontrollere at Unicode verdien har riktig oversatt . Når du er ferdig , avslutter SQL * Plus økt.