Come inserire un simbolo Delta in un database Oracle

November 23

Come inserire un simbolo Delta in un database Oracle


database Oracle supportano una vasta gamma di schemi di codifica, tra cui, codici internazionali e nazionali specifici del produttore. Gli amministratori di database possono personalizzare i database per soddisfare particolari schemi di codifica, o set di caratteri. Quando i caratteri speciali devono essere memorizzati in una tabella di database, una rappresentazione alfanumerica nota come esadecimale o Unicode, valore viene utilizzato per rappresentare un carattere. Il valore Unicode che definisce la lettera greca delta è "0394" e il valore che definisce l'equivalente latino è "018D".

istruzione

1 Aprire una sessione di riga comando SQL * Plus.

2 Determinare se il database è stato configurato per il supporto Unicode. Digitare la seguente query sulla riga di comando per mostrare quale set di caratteri è attualmente definito per il database:

Scelta da SYS.NLS_CHARACTERSET_PARAMETERS
DOVE PARAMETRO = 'NLS_CHARACTERSET';

dove "VALORE" indica il set di caratteri corrente.

3 Modificare il set di caratteri a uno UTF-8 o UTF-16 se e solo se il nuovo tipo di carattere è una rigorosa superset di quello vecchio. Verificare che un backup completo del database esistente prima di modificare il set di caratteri, utilizzando la seguente istruzione come un esempio:

ALTER DATABASE SET CARATTERI AL32UTF8;

dove il valore "AL32UTF8" specifica lo schema di codifica UTF-8. Sostituire "AL32UTF8" con "AL16UTF16", se si decide di utilizzare UTF-16.

4 Verificare che il campo che conterrà il valore Unicode è un tipo di dati CHAR, VARCHAR2, NCHAR o CLOB. Modificare il tipo di dati del campo, se necessario, per consentire il campo per contenere un valore Unicode.

5 Applicare la funzione "UNISTR" per inserire il carattere delta greco o latino nel campo designato. Utilizzare la stringa esadecimale '0394' per la lettera greca o '018D' per l'equivalente latino. Digitare le seguenti dichiarazioni nel riga di comando:

INSERT INTO MY_TABLE (UNICD_COL)
VALORI (UNISTR ( '\ 0394');
COMMETTERE;

dove "MY_TABLE" è il nome della tabella di database, "UNICD_COL" è il nome del campo e "\ 0394" rappresenta il valore Unicode per la lettera greca delta.

6 Selezionare la colonna dalla tabella per verificare che il valore Unicode ha tradotto correttamente. Al termine, uscire dalla sessione SQL * Plus.

Consigli e avvertenze

  • A seconda di come il database è definito, i valori Unicode possono essere memorizzati in una tabella di database, ma non possono essere raggiunti in una query o come letterale.
  • Durante il processo di modifica il set di caratteri Unicode utilizzando l'istruzione "ALTER", ricordate che altri valori dei campi del database possono convertire in Unicode e causare la perdita di dati e la corruzione. Quindi, fare un backup completo prima di applicare le modifiche.