Oracle dekomponerer

Oracle Dekomponerer



Unicode er en av de mest innflytelsesrike og kraftige kodingsstandardene i utviklingsverdenen. Unicode representerer tegn fra nesten alle språk ved å kode tegnene i en heltallskode mellom 0 og 0x10ffff.

På grunn av allsidigheten til databaser, vil du en gang i blant finne deg selv å konvertere en streng til dens Unicode-representasjon.







I denne opplæringen vil du lære hvordan du bruker Oracle-databasers decompose()-funksjon for å konvertere en gitt til Unicode-representasjonen.



Oracle Decompose funksjonssyntaks

Funksjonssyntaksen er som vist nedenfor:



DEKOMPOSE( streng [, { 'KANONISK' | 'KOMPATIBILITET' } ] )

Funksjonen godtar to argumenter:





  1. String – dette representerer strengen som skal konverteres til Unicode-komposisjon. Verdien til denne parameteren kan være CHAR, VARCHAR, NCHAR, NVARCHAR2, CLOB og NCLOB.
  2. KANONISK – ved å sette verdien til kanonisk lar funksjonen utføre en kanonisk dekomponering som muliggjør rekomponering til den opprinnelige strengen. Hvis ikke spesifisert, vil funksjonen bruke denne parameteren som standard.
  3. KOMPATIBILITET – hvis verdien er satt til kompatibilitet, vil funksjonen utføre dekomponeringen i kompatibilitetsmodus. Denne modusen tillater ikke omkomponering til den opprinnelige strengen. Bruk dette alternativet når du dekomponerer halv-bredde og full-bredde katakana-tegn.

Det er greit å huske på at CLOB- og NCLOB-typer støttes via eksplisitt konvertering.

Eksempel på funksjonsbruk

Følgende eksempler viser hvordan du bruker Oracle-databasers decompose()-funksjon.



Eksempel 1 – Grunnleggende funksjonsbruk

Følgende enkle kode viser hvordan du bruker dekomponer-funksjonen til å dekomponere en streng til dens Unicode-representasjon.

velg decompose('Hei') som utgang fra dual;

Å kjøre koden ovenfor bør returnere utdatastrengen som:

Eksempel 2 – Få ASCII-koden

For å hente Unicode-heltallsverdiene kan vi sende den resulterende strengen til asciistr-funksjonen som vist i eksemplet nedenfor:

velg asciistr(decompose('你好')) som utdata fra dual;

Produksjon:

Eksempel 3 – Bruk av funksjonen med ikke-Unicode-tegn

Hvis vi gir funksjonen ikke-Unicode-tegn, vil funksjonen returnere inndatastrengen uten noen modifikasjoner.

Et eksempel på demonstrasjon er som vist:

velg decompose('l') som utdata fra dual;

Resultat:

Det samme tilfellet gjelder selv når du bruker asciistr-funksjonen.

velg asciistr(('l')) som utdata fra dual;

Produksjon:

Eksempel 4 – Bruk av funksjonen med NULL-argument

Funksjonen vil returnere en NULL-verdi hvis inngangsverdien er NULL.

Eksempel:

velg (NULL) som utgang fra dual;

Produksjon:

Eksempel 5 – Kalle opp funksjonen med manglende parametere

Strengeparameteren i funksjonen er påkrevd. Derfor, hvis vi ikke klarer å passere strengverdien, vil funksjonen returnere en feil som vist:

velg () som utgang fra dual;

Resultat:

SQL-feil: ORA-00938: ikke nok argumenter for funksjon
00938. 00000 -  'ikke nok argumenter for funksjon'

Konklusjon

I denne opplæringen lærte du hvordan du bruker Oracles decompose()-funksjon for å konvertere en streng til dens Unicode-representasjon.