Az Unicode az egyik legbefolyásosabb és leghatékonyabb kódolási szabvány a fejlesztő világban. A Unicode szinte az összes nyelv karaktereit reprezentálja azáltal, hogy a karaktereket 0 és 0x10ffff közötti egész kódba kódolja.
Az adatbázisok sokoldalúsága miatt időnként azon kaphatja magát, hogy egy karakterláncot Unicode-ábrázolásra konvertál.
Ebből az oktatóanyagból megtudhatja, hogyan használhatja az Oracle adatbázisok decompose() függvényét egy adott Unicode-ábrázolásra való konvertálására.
Oracle Decompose függvény szintaxisa
A függvény szintaxisa a következő:
DECOMPOSE( string [, { 'CANONICAL' | 'KOMPATIBILITÁS' } ] )
A függvény két argumentumot fogad el:
- Húr – ez az Unicode összetételűvé konvertálandó karakterlánc. Ennek a paraméternek az értéke lehet CHAR, VARCHAR, NCHAR, NVARCHAR2, CLOB és NCLOB.
- KÁNONI – az érték kanonikusra állítása lehetővé teszi, hogy a függvény kanonikus bontást hajtson végre, amely lehetővé teszi az eredeti karakterláncra történő újrakomponálást. Ha nincs megadva, a függvény alapértelmezés szerint ezt a paramétert fogja használni.
- KOMPATIBILITÁS – ha az érték kompatibilitásra van állítva, a funkció kompatibilitási módban hajtja végre a bontást. Ez a mód nem teszi lehetővé az újrakomponálást az eredeti karakterláncra. Használja ezt a beállítást a fél- és teljes szélességű katakana karakterek bontásához.
Érdemes szem előtt tartani, hogy a CLOB és az NCLOB típusokat az explicit konverzió támogatja.
Példa funkcióhasználatra
A következő példák bemutatják, hogyan kell használni az Oracle adatbázisok decompose() függvényét.
1. példa – Alapvető funkcióhasználat
A következő egyszerű kód bemutatja, hogyan lehet a dekompozíció függvényt használni egy karakterlánc Unicode-ábrázolásra való felbontására.
válassza ki a decompose('Hello') kimenetet a dualból;A fenti kód futtatása a következőképpen adja vissza a kimeneti karakterláncot:
2. példa – Az ASCII kód lekérése
A Unicode egész értékek lekéréséhez az eredményül kapott karakterláncot átadhatjuk az asciistr függvénynek, az alábbi példában látható módon:
válassza ki az asciistr(decompose('你好'))-t a dual kimeneteként;Kimenet:
3. példa – A függvény használata nem Unicode karakterekkel
Ha a függvényt nem Unicode karakterekkel látjuk el, akkor a függvény változtatás nélkül adja vissza a bemeneti karakterláncot.
A bemutató példa a képen látható:
válassza ki a decompose('l')-t a dual kimeneteként;Eredmény:
Ugyanez érvényes még az asciistr függvény használatakor is.
válassza ki az asciistr(('l'))-t a dual kimeneteként;Kimenet:
4. példa – A függvény használata NULL argumentummal
A függvény NULL értéket ad vissza, ha a bemeneti érték NULL.
Példa:
válassza ki a (NULL) kimenetet a dualból;Kimenet:
5. példa – A függvény hívása hiányzó paraméterekkel
A függvényben szereplő karakterlánc paraméter kötelező. Ezért, ha nem adjuk át a karakterlánc értékét, a függvény hibát ad vissza, amint az látható:
válassza ki a ()-t a dual kimeneteként;Eredmény:
SQL hiba: ORA-00938: nincs elég argumentum a függvényhez00938. 00000 - 'nincs elég argumentum a függvényhez'
Következtetés
Ebben az oktatóanyagban megtanulta, hogyan kell az Oracle decompose() függvényét használni egy karakterlánc Unicode-ábrázolásra való átalakítására.