Oracle ayrıştırma

Oracle Ayristirma



Unicode, geliştirme dünyasındaki en etkili ve güçlü kodlama standartlarından biridir. Unicode, karakterleri 0 ile 0x10ffff arasında bir tamsayı kodunda kodlayarak neredeyse tüm dillerdeki karakterleri temsil eder.

Veritabanlarının çok yönlülüğü nedeniyle, arada bir kendinizi bir diziyi Unicode gösterimine dönüştürürken bulacaksınız.







Bu öğreticide, verilen bir Unicode temsiline dönüştürmek için Oracle veritabanlarının decompose() işlevini nasıl kullanacağınızı öğreneceksiniz.



Oracle Ayrıştırma İşlevi Söz Dizimi

İşlev sözdizimi aşağıda gösterildiği gibidir:



DECOMPOSE( string [, { 'KANONICAL' | 'UYUMLULUK' } ] )

İşlev iki argüman kabul eder:





  1. Sicim – bu, Unicode bileşimine dönüştürülecek dizeyi temsil eder. Bu parametrenin değeri CHAR, VARCHAR, NCHAR, NVARCHAR2, CLOB ve NCLOB olabilir.
  2. KANONİK – değerin kurallı olarak ayarlanması, işlevin, orijinal diziye yeniden düzenlemeye izin veren bir kurallı ayrıştırma gerçekleştirmesini sağlar. Belirtilmezse işlev varsayılan olarak bu parametreyi kullanır.
  3. UYUMLULUK – değer uyumluluk olarak ayarlanmışsa, işlev ayrıştırmayı uyumluluk modunda gerçekleştirecektir. Bu mod, orijinal dizide yeniden düzenlemeye izin vermez. Yarım genişlikte ve tam genişlikte katakana karakterlerini ayrıştırırken bu seçeneği kullanın.

CLOB ve NCLOB türlerinin açık dönüştürme yoluyla desteklendiğini akılda tutmakta fayda var.

Örnek İşlev Kullanımı

Aşağıdaki örnekler, Oracle veritabanlarının decompose() işlevinin nasıl kullanılacağını göstermektedir.



Örnek 1 – Temel İşlev Kullanımı

Aşağıdaki basit kod, bir dizeyi Unicode temsiline ayrıştırmak için ayrıştırma işlevinin nasıl kullanılacağını gösterir.

dual çıktı olarak decompose('Hello') öğesini seçin;

Yukarıdaki kodu çalıştırmak, çıktı dizesini şu şekilde döndürmelidir:

Örnek 2 – ASCII Kodunu Alma

Unicode tamsayı değerlerini getirmek için, aşağıdaki örnekte gösterildiği gibi, ortaya çıkan dizeyi asciistr işlevine iletebiliriz:

ikiliden çıktı olarak asciistr(decompose('你好')) öğesini seçin;

Çıktı:

Örnek 3 – İşlevi Unicode Olmayan Karakterlerle Kullanma

İşlevi Unicode olmayan karakterlerle sağlarsak, işlev herhangi bir değişiklik yapmadan giriş dizesini döndürür.

Örnek bir gösteri gösterildiği gibidir:

ikiliden çıktı olarak decompose('l') öğesini seçin;

Sonuç:

Asciistr işlevi kullanılırken bile aynı durum geçerlidir.

dual'den çıktı olarak asciistr(('l')) öğesini seçin;

Çıktı:

Örnek 4 – İşlevi NULL Bağımsız Değişkeniyle Kullanma

Giriş değeri NULL ise fonksiyon bir NULL değeri döndürür.

Misal:

ikiliden çıkış olarak (NULL) öğesini seçin;

Çıktı:

Örnek 5 – Fonksiyonu Eksik Parametrelerle Çağırma

İşlevdeki string parametresi gereklidir. Bu nedenle, dize değerini geçemezsek, işlev gösterildiği gibi bir hata döndürür:

ikiliden çıktı olarak () öğesini seçin;

Sonuç:

SQL Hatası: ORA-00938: işlev için yeterli bağımsız değişken yok
00938. 00000 -  'işlev için yeterli bağımsız değişken yok'

Çözüm

Bu öğreticide, bir dizeyi Unicode gösterimine dönüştürmek için Oracle'ın decompose() işlevini nasıl kullanacağınızı öğrendiniz.