Guida Oracle
Introduzione – Guida Oracle
Lo scopo di questa guida è quello di iniziare a conoscere una tecnologia ampiante diffusa ed utilizzata in ambito enterprise.
In tal senso, credo sia giusto fare una doverosa precisazione: esistono tanti RDBMS (SQL Server, MYSQL, PostGres, etc.) tuttavia, quello più diffuso nelle Pubbliche Amministrazioni e nelle società di medio/grandi dimensioni è, certamnete, Oracle.
Ci tengo a precisare che questo non...
Procedura d’installazione – Guida Oracle
Avviando il file di installazione verrà visualizzata la seguente schermata:
Cliccando su Avanti, verrà mostrata un'ulteriore schermata (visualizzata di seguito) che riporta i termini del contratto di licenza da leggere ed accettare per poter proseguire nell'installazione.
Accettati, quindi, i termini della licenza, premendo ancora Avanti, vi verrà richiesto il percorso (path) dove installare il programma e ci verrà indicato lo spazio...
Panoramica sul pannello d’amministrazione – Guida Oracle
La schermata dell'Home Page di Amministrazione di Oracle richiede l'autenticazione. Al primo accesso potete usufruire dell'account SYS e della relativa password impostata in fase d'installazione.
Effettuato il login vsi avrà accesso al pannelo di amministrazione.
La home page, graficamente semplice e ben definita, è divisa in due parti distinte. La prima, centrale, visualizza quattro menu tramite i quali è possibile...
Gestione degli utenti – Guida Oracle
Come visto precedentemente dalle schermate del pannello di amministrazione, l'area amministrativa presenta varie funzionalità. Tra queste la gestione delle utenze riveste un ruolo fondamentale. Vediamola un po' più nel dettaglio.
Creare un nuovo utente
La vista Crea Utente, come da figura sottostante, consente di creare un nuovo utente.
Per creare un nuovo utente, è necessario fornire una serie di informazioni obbligatorie che...
Browser oggetti – Guida Oracle
L'area Browser oggetti, è divisa principalmente in due macro aree, che corrispondono a due funzionalità ben distinte, e sono rispettivamente:
Crea
Sfoglia
La funzionalità Sfoglia, così come la funzionalità Crea, presenta un sottomenu contenente tutti gli oggetti su cui va ad operare, come si può vedere dalla schermata seguente.
Essa, come mostrato dalla schermata sottostante, racchiude due liste, la prima in alto contiene...
Il menu SQL – Guida Oracle
L'area SQL è divisa principalmente in tre macro aree, che corrispondono a tre funzionalità ben distinte, e sono rispettivamente:
Comandi SQL
Script SQL
Costruzione guidata query
Soffermiamoci sulla prima di queste aree. Selezioniamo, quindi, Comandi SQL per aprire il relativo menu:
Selezionando Immetti comando ci verrà presentata la seguente schermata:
Come è possibile notare già ad una prima occhiata, la pagina si suddivide in due...
Importare dati all’interno del database – Guida Oracle
Occupiamoci ora della fnzionalità Utility. Come si può vedere dalla schermata seguente, essa è distinta nelle seguenti funzionalità:
Caricamento/Scaricamento dati
Genera DDL
Report degli oggetti
Cestino
La funzionalità Caricamento/Scaricamento dati racchiude in se le seguentti funzionalità:
Carica
Scarica
Repository
Noi analizzeremo la funzionalità Carica. Tale funzionalità, cone vedremo, ci permette ci caricare in tabella dati provenienti da altre sorgenti, come potrebbero essere fogli di testo, fogli di calcolo...
Cenni di SQL: i comandi DDL – Guida Oracle
Dopo questa rapida carrellata delle principali funzioni offerte da Orcale XE, cominciamo ad addentrarci sulla sintassi dei principali comandi del SQL.
Di seguito verrà fornito qualche semplice esempio di sintassi per quelli che sono i principali costrutti, rimandando ad altre guide presenti sul sito per un loro eventuale approfondimento.
Lo Structured Query Language - di SQL è l'acronimo - è un...
Cenni di SQL: i comandi DML – Guida Oracle
Oggetto di questa lezione sono, invece, i comandi DML; essi sono del tipo:
INSERT
SELECT
DELETE
UPDATE
Si tratta, cioè, dei comandi per la manipolazione dei dati.
INSERT
Il comando di INSERT serve per inserire nuovi record (righe di dati) in tabella.
Supponiamo di voler inserire nella nostra tabella di anagrafica due record; per farlo scriveremo:
INSERT
INTO Anagrafica
VALUES('Mario', 'Rossi', 20000, 'Impiegato');
INSERT
INTO Anagrafica
VALUES('Carlo', 'Verdi,...
Cenni di SQL: i comandi DCL – Guida Oracle
Oggetto di questo capitolo sono invece le istruzioni DCL, ovvero le istruzioni che agiscono sulla transazione. Esse sono del tipo:
SAVEPOINT
ROLLBACK
COMMIT
In Oracle, per transazione si intende una serie di istruzioni SQL che vengono trattate come se fossero una singola unità. Come accennato nel capitolo precedente, Oracle non consolida, ovvero non rende permanenti le modifiche apportate dalle istruzioni di Data...
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...
La sintassi dei blocchi in PL/SQL – Guida Oracle
Come accennato nella lezione precedente, i blocchi costituiscono l''unità elementare di codice PL/SQL.
Ogni blocco PL/SQL inizia con la parola chiave “BEGIN” e termina con la parola chiave “END” ed ogni istruzione compresa all'interno del blocco deve terminare con il punto e virgola. Avremo quindi una sintassi del genere:
BEGIN
istruzione1;
istruzione2;
END;
Più precisamente, la struttura di un blocco...
Variabili e costanti in PL/SQL – Guida Oracle
Tutte le variabili e le costanti (così come anche i cursori che vedremo in seguito) utilizzate in un blocco PL/SQL devono essere necessariamente dichiarate nella relativa sezione di dichiarazione.
Prima di soffermarci sui formati di dichiarazione specifici ecco alcune regole generali per la dichiarazione di variabili e costanti:
devono iniziare con un carattere
possono contenere sia maiuscole che minuscole
devono avere lunghezza...
Creare una procedura in PL/SQL – Guida Oracle
In PL/SQL, si definisce procedura un blocco di codice dotato di un nome attraverso cui viene salvato e può essere richiamata da altri blocchi PL/SQL, da altre procedure e da altre funzioni. La sintassi per la definizione di una procedura è la seguente:
CREATE PROCEDURE <nome_procedura> IS
<dichiarazione>
BEGIN
<sequenza di istruzioni>
END ;
Andiamo ad analizzare le clausole...
Creare una funzione in PL/SQL – Guida Oracle
In PL/SQL si definisce funzione un blocco di codice dotato di un nome attraverso il quale viene salvata e può essere richiamata da altri blocchi PL/SQL, da altre procedure e da altre funzioni.
Le funzioni, del tutto simili alle procedure, si differenziano da queste per la RETURN che specifica il tipo di dato restituito, infatti esse restituiscono sempre un valore....
Strutture condizionali in PL/SQL – Guida Oracle
Finora tutti i comandi che abbiamo visto venivano eseguiti in rigida sequenza.
Adesso, vedremo alcuni costrutti che ci permetteranno di svincolarci da questo "percorso obbligato" e ci consentiranno di eseguire delle istruzioni piuttosto di altre a seconda dei valori assunti da alcune condizioni. Questi costrutti (detti costrutti condizionali) vengono, quindi, utilizzati per controllare il flusso di elaborazione della nostra sequenza...
Operatori di confronto e operatori logici – Guida Oracle
Per la quot;costruzione" delle condizioni è possibile operare dei confronti utilizzando gli operatori di confronto:
= - uguale
> - maggiore
< - minore
>= - maggiore o uguale
<= - minore o uguale
<> o != - diverso
Facciamo un esempio: costruiamo una condizione sulla base di un'ipotetico campo prezzo, condizione che sarà verificata se il contenuto è inferiore a 100.
IF prezzo < 100 THEN
...
Strutture iterative in PL/SQL – Guida Oracle
Per strutture iterative (anche dette controlli iterativi o, più comunemente, cicli) si intendono quei costrutti che consentono di eseguire ciclicamente una serie di istruzioni fino a quando non si verifica una condizione oppure terminano gli elementi da "ciclare".
Fondamentalmente, il PL/SQL offre tre diversi tipi di costrutti per il controllo di flusso iterativo:
Ciclo semplice
Ciclo WHILE
Ciclo FOR
Essi si differenziano tra...
Gestire le eccezioni in PL/SQL – Guida Oracle
Quando all'interno del nostro blocco PL/SQL si verifica un errore, o anche un avviso, viene scatenata un'eccezione. Le eccezioni possono essere distinte in due tipi:
Eccezioni di sistema
Eccezioni utente
Gli errori più generici che si possono verificare durante l'esecuzione di blocchi PL/SQL vengono gestiti dalle eccezioni di sistema. Esse si scatenano automaticamente quando si verificano i relativi errori. Le eccezioni utente...
Cursori espliciti – Guida Oracle
Quando eseguiamo una query, possiamo avere come risultato una tupla o una serie di tuple. Con gli strumenti analizzati fin'ora, a meno di aggiornamenti massivi in tabella, riusciamo a gestire al meglio solo le singole tuple. Il PL/SQL però, mette a disposizione uno strumento potente per la gestione di query che restituiscono una serie di tuple. Questo strumento è...
Approfondimenti sui Cursori – Guida Oracle
Nel capitolo precedente abbiamo visto i cursori, più specificatamente abbiamo visto cosa sono e come si utilizzano i cursori espliciti.
Esiste, tuttavia, un altro tipo di cursori, i cosiddetti cursori impliciti, che in realtà abbiamo già utilizzato pur senza saperlo. Infatti, ogni qualvolta eseguiamo un comando DML così come una query del tipo SELECT INTO, il server Oracle apre...
Join e Subquery – Guida Oracle
Finora abbiamo analizzato query che operano su una singola tabella, ma una caratteristica fondamentale dei database relazionali è, invece, proprio quella di riuscire ad interrogare simultaneamente diverse tabelle.
In sostanza, è possibile ottenere tuple i cui campi appartengono a tabelle differenti in modo tale da avere, con una singola query, tutte le informazioni necessarie anche se appartenenti a tabelle differenti.
La...
Funzioni per gestire le stringhe in PL/SQL – Guida Oracle
Come abbiamo visto, tramite le query possiamo estrarre il contenuto delle tabelle del database. Finora, abbiamo estratto i dati così come erano stati memorizzati, tuttavia l'SQL ci permette, tramite una serie di funzioni, di manipolare in qualche maniera i dati che andiamo ad estrarre in modo tale da restituirci qualcosa di più consono a quelle che possono essere le...
Funzioni matematiche in PL/SQL – Guida Oracle
Come detto nella precedente lezione è impossibile vedere tutte le funzioni offerte da PL/SQL che, anche per la gestione delle operazioni matematiche, sono tantissime. In questa sede, pertanto, ci limiteremo a vedere solo le seguenti funzioni:
ABS
SQRT
ROUND
SIGN
ABS
La funzione ABS, la cui sintassi è la seguente:
ABS(x)
restituisce il valore assoluto del numero x. Per intenderci, se scriviamo:
SELECT ABS(-100) FROM Dual;
Otterremo come risultato:...
Funzioni per la gestione delle date in PL/SQL – Guida Oracle
Per quanto concerne la manipolazione delle date vedremo il funzionamento delle seguenti funzioni:
DBTIMEZONE
SYSDATE
ADD_MONTHS
LAST_DAY
NEXT_DAY
DBTIMEZONE
La funzione DBTIMEZONE, la cui sintassi è la seguente:
SELECT DBTIMEZONE FROM DUAL;
restituisce il time zone offset (il fuso orario) impostato nella nostra installazione di Oracle.
SYSDATE
La funzione SYSDATE, la cui sintassi è la seguente:
SYSDATE
restituisce la data corrente di sistema del nostro database locale. Per intenderci, se scriviamo:
SELECT...
Gestire utenti e privilegi – Guida Oracle
Tra i compiti del DBA, vi è quello di creare e amministrare le utenze del database. Sarà lui a decidere quali privilegi concedergli, ovvero le operazioni che essi potranno compiere sul database ad essi associato.
Abbiamo già avuto modo di vedere come si crea un'utenza tramite le funzionalità offerte dal pannello di amministrazione. Ora vedremo come fare altrettanto tramite comandi...