Oracle Decompose

Oracle Decompose



Ang Unicode ay isa sa pinakamaimpluwensyang at makapangyarihang mga pamantayan sa pag-encode sa mundo ng pag-unlad. Kinakatawan ng Unicode ang mga character mula sa halos lahat ng mga wika sa pamamagitan ng pag-encode ng mga character sa isang integer code sa pagitan ng 0 at 0x10ffff.

Dahil sa versatility ng mga database, makikita mo, paminsan-minsan, ang iyong sarili na nagko-convert ng string sa representasyong Unicode nito.







Sa tutorial na ito, matututunan mo kung paano gamitin ang function na decompose() ng Oracle database upang i-convert ang ibinigay sa representasyong Unicode nito.



Oracle Decompose Function Syntax

Ang function syntax ay tulad ng ipinapakita sa ibaba:



DECOMPOSE( string [, { 'CANONICAL' | 'COMPATIBILITY' } ] )

Tumatanggap ang function ng dalawang argumento:





  1. String – kinakatawan nito ang string na iko-convert sa komposisyon ng Unicode. Ang halaga ng parameter na ito ay maaaring CHAR, VARCHAR, NCHAR, NVARCHAR2, CLOB, at NCLOB.
  2. CANONICAL – Ang pagtatakda ng value sa canonical ay nagbibigay-daan sa function na magsagawa ng canonical decomposition na nagbibigay-daan para sa recomposition sa orihinal na string. Kung hindi tinukoy, gagamitin ng function ang parameter na ito bilang default.
  3. PAGKAKAtugma – kung ang halaga ay nakatakda sa compatibility, gagawin ng function ang decomposition sa compatibility mode. Hindi pinapayagan ng mode na ito ang recomposition sa orihinal na string. Gamitin ang opsyong ito kapag nagde-decomposite ng half-width at full-width na mga karakter ng katakana.

Magandang tandaan na ang mga uri ng CLOB at NCLOB ay sinusuportahan sa pamamagitan ng tahasang conversion.

Halimbawang Paggamit ng Function

Ipinapakita ng mga sumusunod na halimbawa kung paano gamitin ang function ng decompose() ng Oracle database.



Halimbawa 1 – Pangunahing Paggamit ng Function

Ang sumusunod na simpleng code ay nagpapakita kung paano gamitin ang decompose function upang mabulok ang isang string sa Unicode na representasyon nito.

piliin ang decompose('Hello') bilang output mula sa dalawahan;

Ang pagpapatakbo ng code sa itaas ay dapat ibalik ang output string bilang:

Halimbawa 2 – Pagkuha ng ASCII Code

Upang kunin ang mga halaga ng Unicode integer, maaari naming ipasa ang resultang string sa asciistr function tulad ng ipinapakita sa halimbawa sa ibaba:

piliin ang asciistr(decompose('你好')) bilang output mula sa dual;

Output:

Halimbawa 3 – Paggamit ng Function na may mga Non-Unicode na Character

Kung ibibigay namin ang function na may mga hindi Unicode na character, ibabalik ng function ang input string nang walang anumang pagbabago.

Ang isang halimbawang pagpapakita ay tulad ng ipinapakita:

piliin ang decompose('l') bilang output mula sa dalawahan;

Resulta:

Ang parehong kaso ay nalalapat kahit na kapag ginagamit ang asciistr function.

piliin ang asciistr(('l')) bilang output mula sa dalawahan;

Output:

Halimbawa 4 – Paggamit ng Function na may NULL Argument

Ang function ay magbabalik ng NULL value kung ang input value ay NULL.

Halimbawa:

piliin ang (NULL) bilang output mula sa dalawahan;

Output:

Halimbawa 5 – Pagtawag sa Function na may Nawawalang Parameter

Kinakailangan ang string parameter sa function. Samakatuwid, kung hindi namin maipasa ang halaga ng string, ang function ay magbabalik ng isang error tulad ng ipinapakita:

piliin ang () bilang output mula sa dalawahan;

Resulta:

SQL Error: ORA-00938: hindi sapat na mga argumento para sa function
00938. 00000 -  'hindi sapat na mga argumento para sa paggana'

Konklusyon

Sa tutorial na ito, natutunan mo kung paano gamitin ang Oracle's decompose() function para i-convert ang isang string sa Unicode representation nito.