ASPITALIA.IT

Sito dedicato alla tecnologia web di Microsoft. Da ASP a ASP.NET trovate articoli e tutorial interessanti adatti anche a chi si av...

Leggi la Descrizione
HTML.IT

Uno dei migliori siti di programmazione presenti sul Web. Se volete iniziare a programmare in qualsiasi linguaggio, html.it &egrav...

Leggi la Descrizione
YoungPortal.it

Portale ricco di risorse per sviluppatori Delphi, asp.net, java. Da poco attiva la nuova sezione SUBSONIC che cerca di andare inco...

Leggi la Descrizione
INTRODUZIONE A PL/SQL

Visitatori: 1201

La maggior parte degli utenti che stanno leggendo questo articolo conosceranno certamnete il linguaggio SQL. SQL è un linguaggio utilizzato per effettuare interrogazioni su database relazionali. Esso possiede caratteristiche complesse che consentono di estrapolare i dati in diverse forme in base alle nostre esigenze, tuttavia, essendo un linguaggio non procedurale, non è possibile interrogare i dati e al contempo eseguire operazioni su questi utilizzando esclusivamente il linguaggio SQL.

Per ovviare a questa limitazione oracle ha ideato un estensione di SQL, creando un vero e proprio linguaggio procedurale noto come PL/SQL.

Quindi dobbiamo sapere che Pl/sql è l’estensione procedurale di SQL, questo vuol dire che si possono dichiarare variabili (come nei linguaggi di programmazione quali C, Delphi), creare loop e altri costrutti logici e, cosa fondamentale, specie quando si utilizzano procedure complesse, PL/SQL consente di gestire le eccezioni.

il concetto di transazione

Quando un utente effettua delle operazione sui dati di un database relazionale, queste operazioni vengono gestite in una transazione. Per capire meglio il concetto di transazione possiamo pensare al concetto di sessione web (l'utente accede ad un sito di e-commerce effettua diversi ordini e solo se alla fine conferma l'ordine tutti i prodotti vengono effettivamnete registrati nell'ordine. Allo stesso modo l'utente in una transazione SQL effettua diverse operazioni e queste possono essere tutte committed o tutte roll backed (annullate).

La transazione rende il database più robusto in quanto se una delle operazioni eseguite non va a buon fine è possibile ripristinare la situazione precedente annullando la transazione stessa.

introduzione ai blocchi pl/sql

PL/SQL è un linguaggio strutturato a blocchi. I blocchi possono essere generici o incapsulati in procedures e functions e memorizzati sul database. Approfondiremo nelle prossime lezioni la creazione e l'utilizzo di procedure e funzioni, per adesso è sufficiente che sappiate che si tratta di blocchi di istruzioni PL/SQL che possono essere memorizzati nel nostro database relazionale, identificandole con un nome e possono essere richiamate da istruzioni SQL o da altri blocchi PL/SQL.

La struttura di un blocco generico o anche anonimo è la seguente:

DECLARE

                        Statement;

BEGIN

                        Statement;
END;

Lo Statement rappresenta una serie di istruzioni, come dichiarazione di variabili, assegnazione di valore alle variabili, esecuzione di comandi sql etc. Vedremo nel dettaglio queste operazioni.

All'interno di un blocco BEGIN..END possono essere contenuti altri blocchi PL/SQL.

La sezione DECLARE serve a dichiarare le variabili che varrano utilizzate dallo statement del blocco PL/SQL.

/* -- commenti */

Come nella maggior parte dei linguaggi anche per PL/SQL i commenti possono essere su riga singola o su più righe:

-- Commento su una riga

/* Commento su più righe */

Esempio:

DECLARE

           -- qui verrano dichiarate le variabili utilizzate dal blocco

BEGIN

          /* qui verranno inserite le istruzioni per

          accedere e manipolare i dati */


END;

Nel prossimo articolo vedremo i tipi di variabili PL/SQL e altri Esempi più significativi.

Lezione precedente | Indice degli articoli | Lezione successiva