PL / SQL - Sintassi di base
In questo capitolo, discuteremo la sintassi di base di PL / SQL che è un file block-structuredlinguaggio; ciò significa che i programmi PL / SQL sono suddivisi e scritti in blocchi logici di codice. Ogni blocco è composto da tre sottoparti:
S.No | Sezioni e descrizione |
---|---|
1 | Declarations Questa sezione inizia con la parola chiave DECLARE. È una sezione opzionale e definisce tutte le variabili, i cursori, i sottoprogrammi e gli altri elementi da utilizzare nel programma. |
2 | Executable Commands Questa sezione è racchiusa tra le parole chiave BEGIN e ENDed è una sezione obbligatoria. Consiste nelle istruzioni PL / SQL eseguibili del programma. Dovrebbe avere almeno una riga di codice eseguibile, che potrebbe essere solo un fileNULL command per indicare che non deve essere eseguito nulla. |
3 | Exception Handling Questa sezione inizia con la parola chiave EXCEPTION. Questa sezione facoltativa contieneexception(s) che gestiscono gli errori nel programma. |
Ogni istruzione PL / SQL termina con un punto e virgola (;). I blocchi PL / SQL possono essere nidificati all'interno di altri blocchi PL / SQL utilizzandoBEGIN e END. Di seguito è riportata la struttura di base di un blocco PL / SQL:
DECLARE
<declarations section>
BEGIN
<executable command(s)>
EXCEPTION
<exception handling>
END;
L'esempio "Hello World"
DECLARE
message varchar2(20):= 'Hello, World!';
BEGIN
dbms_output.put_line(message);
END;
/
Il end;linea segnala la fine del blocco PL / SQL. Per eseguire il codice dalla riga di comando SQL, potrebbe essere necessario digitare / all'inizio della prima riga vuota dopo l'ultima riga del codice. Quando il codice precedente viene eseguito al prompt SQL, produce il seguente risultato:
Hello World
PL/SQL procedure successfully completed.
Gli identificatori PL / SQL
Gli identificatori PL / SQL sono costanti, variabili, eccezioni, procedure, cursori e parole riservate. Gli identificatori sono costituiti da una lettera eventualmente seguita da più lettere, numeri, segni di dollaro, trattini bassi e segni di numeri e non devono superare i 30 caratteri.
Per impostazione predefinita, identifiers are not case-sensitive. Quindi puoi usareinteger o INTEGERper rappresentare un valore numerico. Non è possibile utilizzare una parola chiave riservata come identificatore.
I delimitatori PL / SQL
Un delimitatore è un simbolo con un significato speciale. Di seguito è riportato l'elenco dei delimitatori in PL / SQL:
Delimitatore | Descrizione |
---|---|
+, -, *, / | Addizione, sottrazione / negazione, moltiplicazione, divisione |
% | Indicatore di attributo |
' | Delimitatore di stringa di caratteri |
. | Selettore dei componenti |
(,) | Delimitatore di espressione o elenco |
: | Indicatore della variabile host |
, | Separatore articolo |
" | Delimitatore identificatore citato |
= | Operatore relazionale |
@ | Indicatore di accesso remoto |
; | Terminatore di istruzioni |
:= | Operatore di assegnazione |
=> | Operatore di associazione |
|| | Operatore di concatenazione |
** | Operatore di esponenziazione |
<<, >> | Delimitatore etichetta (inizio e fine) |
/*, */ | Delimitatore di commenti su più righe (inizio e fine) |
-- | Indicatore di commento a riga singola |
.. | Operatore di intervallo |
<, >, <=, >= | Operatori relazionali |
<>, '=, ~=, ^= | Diverse versioni di NOT EQUAL |
I commenti PL / SQL
I commenti al programma sono dichiarazioni esplicative che possono essere incluse nel codice PL / SQL che scrivi e aiuta chiunque a leggerne il codice sorgente. Tutti i linguaggi di programmazione consentono una qualche forma di commenti.
PL / SQL supporta commenti su una riga e su più righe. Tutti i caratteri disponibili all'interno di qualsiasi commento vengono ignorati dal compilatore PL / SQL. I commenti PL / SQL su una riga iniziano con il delimitatore - (doppio trattino) ei commenti su più righe sono racchiusi da / * e * /.
DECLARE
-- variable declaration
message varchar2(20):= 'Hello, World!';
BEGIN
/*
* PL/SQL executable statement(s)
*/
dbms_output.put_line(message);
END;
/
Quando il codice precedente viene eseguito al prompt SQL, produce il seguente risultato:
Hello World
PL/SQL procedure successfully completed.
Unità di programma PL / SQL
Un'unità PL / SQL è una delle seguenti:
- Blocco PL / SQL
- Function
- Package
- Corpo del pacchetto
- Procedure
- Trigger
- Type
- Tipo corpo
Ciascuna di queste unità sarà discussa nei capitoli seguenti.