Oracle decompo

Oracle decompo

Unicode è uno degli standard di codifica più influenti e potenti nel mondo dello sviluppo. Unicode rappresenta caratteri di quasi tutte le lingue codificando i caratteri in un codice intero tra 0 e 0x10ffff.

A causa della versatilità dei database, di tanto in tanto ti ritroverai a convertire una stringa nella sua rappresentazione Unicode.

In questo tutorial, imparerai come utilizzare la funzione Decompo () di Oracle Database per convertire una data alla sua rappresentazione Unicode.

Sintassi della funzione Oracle Decompo

La sintassi della funzione è come mostrato di seguito:

Decompo (string [, 'canonical' | 'compatibilità'])

La funzione accetta due argomenti:

  1. Corda - Questo rappresenta la stringa da convertire in composizione Unicode. Il valore di questo parametro può essere char, varchar, nchar, nvarchar2, clob e nclob.
  2. CANONICO - L'impostazione del valore su canonico consente alla funzione di eseguire una decomposizione canonica che consente di ricompensare alla stringa originale. Se non specificato, la funzione utilizzerà questo parametro per impostazione predefinita.
  3. COMPATIBILITÀ - Se il valore è impostato sulla compatibilità, la funzione eseguirà la decomposizione in modalità di compatibilità. Questa modalità non consente la ricostruzione alla stringa originale. Usa questa opzione quando si decompongono i personaggi di mezza larghezza e larghezza a piena larghezza.

È bene tenere presente che i tipi di CLOB e NCLOB sono supportati tramite conversione esplicita.

Esempio di utilizzo della funzione

I seguenti esempi dimostrano come utilizzare la funzione Decompose () dei database Oracle.

Esempio 1 - Utilizzo della funzione di base

Il seguente codice semplice mostra come utilizzare la funzione Decompo per decomporre una stringa nella sua rappresentazione Unicode.

Seleziona decompo ('你 好') come output da Dual;

L'esecuzione del codice sopra dovrebbe restituire la stringa di output come:

Esempio 2 - Ottenere il codice ASCII

Per recuperare i valori interi Unicode, possiamo passare la stringa risultante alla funzione ASCIIST come mostrato nell'esempio seguente:

selezionare asciistr (decompo ('你 好')) come output da doppio;

Produzione:

Esempio 3 - Utilizzo della funzione con caratteri non unicode

Se forniamo la funzione con caratteri non UNICODE, la funzione restituirà la stringa di input senza alcuna modifica.

Una dimostrazione di esempio è come mostrato:

Seleziona decompo ('L') come output da Dual;

Risultato:

Lo stesso caso si applica anche quando si utilizza la funzione ASCIIST.

Seleziona ASCIIST (('L')) come output da Dual;

Produzione:

Esempio 4 - Utilizzo della funzione con argomento null

La funzione restituirà un valore nullo se il valore di input è nullo.

Esempio:

Seleziona (null) come output da Dual;

Produzione:

Esempio 5 - Chiamare la funzione con parametri mancanti

È richiesto il parametro stringa nella funzione. Quindi, se non riusciamo a superare il valore della stringa, la funzione restituirà un errore come mostrato:

Select () come output da Dual;

Risultato:

Errore SQL: ORA-00938: non abbastanza argomenti per la funzione
00938. 00000 - "Non abbastanza argomenti per la funzione"

Conclusione

In questo tutorial, hai imparato a utilizzare la funzione Decompose () di Oracle per convertire una stringa nella sua rappresentazione Unicode.