Oracle Tipi di dati PL/SQL: booleano, numero, data [Esempio]
โก Riepilogo intelligente
I tipi di dati PL/SQL definiscono come Oracle Memorizzano, gestiscono e vincolano ciascun valore in un blocco. Si raggruppano in famiglie di caratteri, numeri, booleani, date e oggetti di grandi dimensioni (LOB), ognuna con il proprio formato di memorizzazione, limiti di dimensione e regole di assegnazione.

Che cosa sono i tipi di dati PL/SQL?
Tipi di dati in PL/SQL definire come i dati verranno archiviati, gestiti e trattati da Oracle durante l'archiviazione e l'elaborazione. I tipi di dati sono associati a uno specifico formato di archiviazione e a vincoli di intervallo. In OracleAd ogni valore o costante viene assegnato un tipo di dati.
La differenza principale tra PL/SQL e SQL I tipi di dati sono che i tipi di dati SQL sono limitati alle colonne della tabella, mentre i tipi di dati PL/SQL sono utilizzati nella Blocchi PL/SQLMaggiori dettagli saranno forniti piรน avanti nel tutorial.
Di seguito รจ riportato un diagramma delle diverse Oracle Tipi di dati PL/SQL:

Tipo di dati CARATTERE PL/SQL
Questo tipo di dati memorizza caratteri alfanumerici in formato stringa. I valori letterali devono essere sempre racchiusi tra virgolette singole quando vengono assegnati a un tipo di dati CHARACTER.
Questo tipo di dati carattere รจ ulteriormente classificato come segue:
- Tipo di dati CHAR (stringa di dimensione fissa)
- Tipo di dati VARCHAR2 (dimensione variabile della stringa)
- Tipo di dati VARCHAR
- NCHAR (dimensione stringa fissa nativa)
- NVARCHAR2 (dimensione stringa variabile nativa)
- LUNGO e LUNGO CRUDO
| Tipo di dati | Descrizione | Sintassi |
|---|---|---|
| CHAR | Questo tipo di dati memorizza un valore stringa e la dimensione della stringa รจ fissa al momento della dichiarazione. variabile.
|
grade CHAR; manager CHAR (10):= 'guru99'; Spiegazione della sintassi:
|
| VARCHAR2 | Questo tipo di dati memorizza una stringa, ma la lunghezza non รจ fissa.
|
manager VARCHAR2(10) := 'guru99'; Spiegazione della sintassi:
|
| VARCHAR | Questo รจ sinonimo del tipo di dati VARCHAR2.
|
manager VARCHAR(10) := 'guru99'; Spiegazione della sintassi:
|
| NCHAR | Questo tipo di dati รจ identico a CHAR, ma il set di caratteri รจ quello nazionale.
|
native NCHAR(10);
Spiegazione della sintassi:
|
| NVARCHAR2 | Questo tipo di dati รจ identico a VARCHAR2, ma il set di caratteri รจ quello nazionale.
|
Native_var NVARCHAR2(10):= 'guru99'; Spiegazione della sintassi:
|
| LUNGO e LUNGO CRUDO | Questo tipo di dati memorizza testi di grandi dimensioni o dati grezzi fino a una dimensione massima di 2 GB.
|
Large_text LONG; Large_raw LONG RAW; Spiegazione della sintassi:
Nota: L'utilizzo del tipo di dati LONG non รจ raccomandato da Oracleร preferibile utilizzare il tipo di dati LOB. |
Tipo di dati PL/SQL NUMBER
Questo tipo di dati memorizza numeri a virgola fissa o mobile con una precisione fino a 38 cifre. Viene utilizzato per lavorare con campi che contengono solo dati numerici. La variabile puรฒ essere dichiarata con o senza dettagli relativi alla precisione e alle cifre decimali. I valori non devono essere racchiusi tra virgolette quando vengono assegnati.
A NUMBER(8,2); B NUMBER(8); C NUMBER;
Spiegazione della sintassi:
- La prima dichiarazione dichiara la variabile 'A' di tipo numerico con precisione totale di 8 e 2 cifre decimali.
- La seconda dichiara 'B' di tipo numerico con precisione totale 8 e senza cifre decimali.
- Il terzo รจ il piรน generico, e dichiara il tipo di dati numerico 'C' senza alcuna restrizione sulla precisione o sul numero di decimali. Puรฒ contenere fino a 38 cifre.
Tipo di dati BOOLEAN PL/SQL
Questo tipo di dati memorizza valori logici. Il Oracle Il tipo di dati booleano rappresenta il valore VERO o FALSO ed รจ utilizzato principalmente nelle istruzioni condizionali. I valori non devono essere racchiusi tra virgolette quando vengono assegnati.
Var1 BOOLEAN;
Spiegazione della sintassi:
- La variabile 'Var1' รจ dichiarata come tipo di dati BOOLEAN. L'output sarร vero o falso in base alla condizione impostata.
Tipo di dati DATA PL/SQL
Questo tipo di dati memorizza i valori in formato data, ovvero giorno, mese e anno. Ogni volta che una variabile viene definita con il tipo di dati DATE, puรฒ contenere informazioni sull'ora; per impostazione predefinita, l'ora viene impostata su 12:00:00 se non specificata. I valori devono essere racchiusi tra virgolette quando vengono assegnati.
Lo standard Oracle Il formato orario per input e output รจ 'DD-MON-YY', impostato in NLS_PARAMETERS (NLS_DATE_FORMAT) a livello di sessione.
newyear DATE:= '01-JAN-2015'; current_date DATE:= SYSDATE;
Spiegazione della sintassi:
- La variabile 'newyear' รจ dichiarata come tipo di dati DATE e le รจ stato assegnato il valore 1 gennaio 2015.
- La seconda dichiarazione dichiara 'current_date' come tipo di dati DATE e gli assegna la data corrente del sistema.
- Entrambe le variabili contengono informazioni temporali.
Tipo di dati LOB PL/SQL
Questo tipo di dati viene utilizzato principalmente per archiviare e manipolare grandi blocchi di dati non strutturati, come immagini e file multimediali. Oracle Il tipo di dati LOB รจ preferito al tipo LONG perchรฉ รจ piรน flessibile. I principali vantaggi di LOB rispetto a LONG sono:
- Una tabella puรฒ contenere al massimo una colonna LONG, mentre non vi รจ alcuna restrizione sul numero di colonne LOB.
- Gli strumenti di interfaccia dati accettano i valori LOB durante la replica, ma omettono le colonne LONG, che devono essere replicate manualmente.
- Una colonna LONG puรฒ memorizzare fino a 2 GB, mentre una colonna LOB puรฒ memorizzare fino a 128 TB.
- Oracle Il tipo di dati LOB viene migliorato a ogni rilascio, mentre LONG rimane sostanzialmente invariato.
Pertanto, รจ sempre consigliabile utilizzare il tipo di dati LOB anzichรฉ LONG. I diversi tipi di dati LOB elencati di seguito possono memorizzare fino a 128 terabyte:
- BLOB
- CLOB e NCLOB
- BFILE
| Tipo di dati | Descrizione | Sintassi |
|---|---|---|
| BLOB | Questo tipo di dati memorizza i dati LOB in formato file binario fino a un massimo di 128 TB. Non memorizza i dati in base ai dettagli del set di caratteri, quindi puรฒ memorizzare dati non strutturati come oggetti multimediali e immagini. |
Binary_data BLOB;
Spiegazione della sintassi:
|
| CLOB e NCLOB | CLOB memorizza i dati LOB nel set di caratteri, mentre NCLOB li memorizza nel set di caratteri nativo. Poichรฉ utilizzano un'archiviazione basata su set di caratteri, non possono memorizzare dati multimediali o immagini. La dimensione massima รจ di 128 TB. |
Charac_data CLOB;
Spiegazione della sintassi:
|
| BFILE |
|
