PL/SQL: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
→Linguaggi simili: fix link |
m tag source deprecati, replaced: <source lang= → <syntaxhighlight lang= (12), </source> → </syntaxhighlight> (12) |
||
Riga 44:
I programmi PL/SQL sono strutturati a blocchi. I blocchi hanno questa forma generale:
<
declare
-- Blocco di dichiarazione (opzionale)
Riga 56:
multilinea.. */
--commento su singola linea
</syntaxhighlight>
La sezione<code>DECLARE</code>specifica i tipi di dato delle variabili, delle costanti, delle collezioni e i tipi definiti dall'utente.
Riga 68:
I programmatori possono lanciare le eccezioni definite dall'utente in modo esplicito con il commando <code>RAISE</code>:
<
L'Oracle Corporation ha predefinito numerose eccezioni, ad esempio NO_DATA_FOUND, TOO_MANY_ROWS, ecc.
Riga 79:
Per esempio:
<
declare
numero1 number(2);
Riga 87:
select numero_civico into numero1 from indirizzi where nome='Mario';
end;
</syntaxhighlight>
Il simbolo <code>:=</code> funziona come un operatore di assegnamento, per memorizzare un valore in una variabile.
Riga 94:
=== Variabili numeriche ===
<
Per definire una variabile numerica il programmatore può usare il tipo <code>NUMBER</code>.
Riga 103:
=== Variabili testuali ===
<
Per definire una variabile di tipo testuale, si può usare il tipo <code>VARCHAR2</code>, con eventualmente tra parentesi il numero massimo di caratteri.
Riga 111:
=== Variabili booleane ===
<
Le variabili booleane possono avere i seguenti valori <code>TRUE</code>, <code>FALSE</code> o <code>NULL</code>.
=== Variabili temporali ===
<
I programmatori possono definire una variabile di tipo data usando il tipo <code>DATE</code>.
Il DBMS Oracle fornisce la funzione <code>to_date</code> per convertire le stringhe in date.
Ad esempio: <
Per convertire le date in testo si può usare la funzione <code>to_char ( date, format_string )</code>.
=== Tipi di dati per specifiche colonne ===
<
Questa sintassi definisce una variabile dello stesso tipo della colonna a cui si riferisce nella dichiarazione.
Riga 134:
I programmatori possono definire tipi di dato con la seguente sintassi:
<
Per esempio:
<
declare
type t_indirizzo is record(
Riga 149:
select nome, via, numero_civico, codice_postale into v_indirizzo from indirizzi where rownum = 1;
end;
</syntaxhighlight>
Questo semplice programma definisce il proprio tipo di dato, <code>t_indirizzo</code>, il quale contiene dei campi <code>nome</code>, <code>via</code>, <code>numero_civico</code> e <code>codice_postale</code>.
Riga 157:
I programmatori possono richiamare i singoli attributi, come in una struct, attraverso la dot-notation, ad esempio:
<
Il PL/SQL permette anche di definire classi e instanziarle come oggetti, questo lo rende simile ai linguaggi di programmazione orientati agli oggetti. In PL/SQL una classe è chiamata Advance Data Type (ADT), è definita come un tipo SQL Oracle, diversamente dai tipi definiti dall'utente, permettendo di usarli sia in SQL che in PL/SQL. Il costruttore e i metodi sono scritti in PL/SQL. L'oggetto può essere salvato in una colonna di database Oracle.
|