Уницоде је један од најутицајнијих и најмоћнијих стандарда кодирања у свету развоја. Уницоде представља знакове из скоро свих језика тако што их кодира у целобројни код између 0 и 0к10фффф.
Због разноврсности база података, с времена на време ћете се наћи да претварате стринг у његову Уницоде репрезентацију.
У овом водичу ћете научити како да користите функцију децомпосе() Орацле база података да конвертујете дату у њену Уницоде репрезентацију.
Синтакса функције Орацле Децомпосе
Синтакса функције је као што је приказано у наставку:
ДЕЦОМПОСЕ( стринг [, { 'ЦАНОНИЦАЛ' | 'ЦОМПАТИБИЛИТИ' } ] )
Функција прихвата два аргумента:
- Низ – ово представља стринг који се конвертује у Уницоде композицију. Вредност овог параметра може бити ЦХАР, ВАРЦХАР, НЦХАР, НВАРЦХАР2, ЦЛОБ и НЦЛОБ.
- ЦАНОНИЦАЛ – постављање вредности на каноничко омогућава функцији да изврши канонску декомпозицију која омогућава рекомпозицију на оригинални низ. Ако није наведено, функција ће подразумевано користити овај параметар.
- КОМПАТИБИЛНОСТ – ако је вредност подешена на компатибилност, функција ће извршити декомпозицију у режиму компатибилности. Овај режим не дозвољава рекомпозицију на оригинални низ. Користите ову опцију када декомпонујете знакове катакане половине и пуне ширине.
Добро је имати на уму да су типови ЦЛОБ и НЦЛОБ подржани путем експлицитне конверзије.
Пример употребе функције
Следећи примери показују како се користи функција децомпосе() Орацле база података.
Пример 1 – Употреба основних функција
Следећи једноставан код показује како да користите функцију децомпосе да декомпонујете стринг на његову Уницоде репрезентацију.
изаберите децомпосе('Хелло') као излаз из дуал;Покретање кода изнад требало би да врати излазни низ као:
Пример 2 – Добијање АСЦИИ кода
Да бисмо преузели Уницоде целобројне вредности, можемо проследити резултујући стринг функцији асциистр као што је приказано у примеру испод:
изаберите асциистр(децомпосе('你好')) као излаз из дуал;Излаз:
Пример 3 – Коришћење функције са знаковима који нису Уницоде
Ако дамо функцији не-Уницоде знакове, функција ће вратити улазни низ без икаквих модификација.
Пример демонстрације је као што је приказано:
изаберите децомпосе('л') као излаз из дуал;резултат:
Исти случај важи чак и када се користи функција асциистр.
изаберите асциистр(('л')) као излаз из дуал;Излаз:
Пример 4 – Коришћење функције са НУЛЛ аргументом
Функција ће вратити вредност НУЛЛ ако је улазна вредност НУЛЛ.
Пример:
изаберите (НУЛЛ) као излаз из дуал;Излаз:
Пример 5 – Позивање функције са недостајућим параметрима
Параметар стринга у функцији је обавезан. Дакле, ако не успемо да проследимо вредност стринга, функција ће вратити грешку као што је приказано:
изаберите () као излаз из дуал;резултат:
СКЛ грешка: ОРА-00938: нема довољно аргумената за функцију00938. 00000 - 'нема довољно аргумената за функцију'
Закључак
У овом водичу сте научили како да користите Орацле-ову функцију децомпосе() за претварање стринга у његову Уницоде репрезентацију.