back to top

Introduzione al PL/SQL – Guida Oracle

Fin qui abbiamo visto alcuni semplici costrutti del linguaggio ‘SQL, costrutti che ci consentono di effettuare tutte le operazioni di manipolazione del database. Essi sono più che sufficienti se il nostro scopo è quello di effettuare semplici interrogazioni, come anche se vogliamo effettuare alcune semplici modifiche alle nostre tabelle. Maggiore sarà la complessità delle nostre esigenze, maggiore sarà l”esperienza di cui avremo bisogno per formulare le nostre query. Pur tuttavia, per quanto grande possa diventare nel tempo la nostra esperienza nella gestione di query, molto spesso, lo sviluppo di applicazioni di database potrebbe rivelarsi un compito molto arduo da affrontare con i soli costrutti del semplice SQL. Ci accorgeremo infatti che, sviluppare applicazioni vere e proprie per la gestione di database richiederà normalmente dei costrutti (quali possono essere quelli delle scelte condizionali o dei cicli iterativi per fare alcuni esempi) che sono del tutto simili a quelli che possiamo ritrovare nei linguaggi di programmazione più affermati come possono essere il C++, il Visual Basic, Java e via discorrendo. Avremo bisogno, alla fin fine, di veri e propri algoritmi di programmazione.

Le esigenze appena descritte, sono quelle che hanno portato alla realizzazione del linguaggio PL/SQL.

Oltre il semplice SQL: PL/SQL

L’acronimo PL/SQL sta per Procedural Language SQL. Esso, come dice la sua definizione, è un vero e proprio linguaggio procedurale, una estensione dell”SQL pensata proprio per riuscire a superare i limiti imposti dall”utilizzo del semplice SQL. Come la maggior parte dei linguaggi procedurali, il PL/SQL mette a disposizione, oltre a tutti i costrutti dell’SQL, anche i controlli condizionali, i cicli iterativi, la gestione delle variabili e delle costanti, la gestione delle eccezioni, delle procedure, delle funzioni, ecc.

Un concetto centrale del PL/SQL è quello di blocco al cui interno è possibile combinare logicamente i vari comandi SQL nonché i vari costrutti "accessori" messi a disposizione dal PL/SQL. Un blocco potrà, quindi, contenere la dichiarazione di costanti e variabili, uno o più controlli condizionali all”occorrenza per "indirizzare" il lavoro delle nostre query, uno o più cicli iterativi con i quali "scorrere" i record delle nostre tabelle, la gestione delle eccezioni, i cursori (che tratteremo specificatamente in seguito), chiamate ad altri blocchi, ecc. I blocchi a loro volta possono essere "contenuti" oltre che "contenitori", ovvero possono essere raggruppati all’interno di packages (di solito, questo raggruppamento è un raggruppamento logico; si vedano, ad esempio, i packages predefiniti di Oracle come quelli per la manipolazione di files, le routines di input e output ecc.).

Insomma, gli utilizzatori professionali troveranno certamente nel PL/SQL un valido alleato per risparmiare tempo (e denaro) nello sviluppo di database complessi, potendo fare affidamento sugli innumerevoli strumenti messi a punto dal team di Oracle nel corso degli anni.

Pubblicitร