Oracle Decompose

Oracle Decompose



Unicode je eden najvplivnejših in najmočnejših standardov kodiranja v svetu razvoja. Unicode predstavlja znake iz skoraj vseh jezikov tako, da kodira znake v celoštevilsko kodo med 0 in 0x10ffff.

Zaradi vsestranskosti baz podatkov se boste občasno znašli pri pretvarjanju niza v njegovo predstavitev Unicode.







V tej vadnici se boste naučili, kako uporabiti funkcijo decompose() baz podatkov Oracle za pretvorbo podane v njeno predstavitev Unicode.



Sintaksa funkcije Oracle Decompose

Sintaksa funkcije je prikazana spodaj:



DECOMPOSE( niz [, { 'KANONIČNO' | 'ZDRUŽLJIVOST' } ] )

Funkcija sprejme dva argumenta:





  1. Vrvica – to predstavlja niz, ki ga je treba pretvoriti v sestavo Unicode. Vrednost tega parametra je lahko CHAR, VARCHAR, NCHAR, NVARCHAR2, CLOB in NCLOB.
  2. KANONIČNO – nastavitev vrednosti na canonical omogoča funkciji izvedbo kanonične razgradnje, ki omogoča ponovno sestavo v izvirni niz. Če ni naveden, bo funkcija privzeto uporabila ta parameter.
  3. KOMPATIBILNOST – če je vrednost nastavljena na združljivost, bo funkcija izvedla razgradnjo v združljivem načinu. Ta način ne dovoljuje rekompozicije v izvirni niz. Uporabite to možnost pri razgradnji znakov katakane polovične in polne širine.

Dobro je upoštevati, da sta tipa CLOB in NCLOB podprta z eksplicitno pretvorbo.

Primer uporabe funkcije

Naslednji primeri prikazujejo, kako uporabljati funkcijo decompose() baze podatkov Oracle.



Primer 1 – Uporaba osnovne funkcije

Naslednja preprosta koda prikazuje, kako uporabiti funkcijo decompose za razgradnjo niza na njegovo predstavitev Unicode.

izberite decompose('Hello') kot izhod iz dual;

Zagon zgornje kode bi moral vrniti izhodni niz kot:

Primer 2 – Pridobivanje kode ASCII

Za pridobivanje celoštevilskih vrednosti Unicode lahko nastali niz posredujemo funkciji asciistr, kot je prikazano v spodnjem primeru:

izberite asciistr(decompose('你好')) kot izhod iz dvojine;

Izhod:

Primer 3 – Uporaba funkcije z znaki, ki niso Unicode

Če funkciji zagotovimo znake, ki niso Unicode, bo funkcija vrnila vhodni niz brez kakršnih koli sprememb.

Primer predstavitve je, kot je prikazano:

izberite decompose('l') kot izhod iz dual;

rezultat:

Enak primer velja tudi pri uporabi funkcije asciistr.

izberite asciistr(('l')) kot izhod iz dvojine;

Izhod:

Primer 4 – Uporaba funkcije z argumentom NULL

Funkcija bo vrnila vrednost NULL, če je vhodna vrednost NULL.

primer:

izberite (NULL) kot izhod iz dvojine;

Izhod:

Primer 5 – Klicanje funkcije z manjkajočimi parametri

Parameter niza v funkciji je obvezen. Torej, če nam ne uspe posredovati vrednosti niza, bo funkcija vrnila napako, kot je prikazano:

izberite () kot izhod iz dvojnega;

rezultat:

Napaka SQL: ORA-00938: ni dovolj argumentov za funkcijo
00938. 00000 -  'ni dovolj argumentov za funkcijo'

Zaključek

V tej vadnici ste se naučili, kako uporabiti Oraclovo funkcijo decompose() za pretvorbo niza v njegovo predstavitev Unicode.