Il DBMS Oracle. Express Edition. Donatella Gubiani e Angelo Montanari



Documenti analoghi
A livello fisico, un istanza di base di dati Oracle è composta. Gubiani & Montanari Oracle Database 3

Al giorno d oggi, i sistemi per la gestione di database

Access. P a r t e p r i m a

Data Base. Master "Bio Info" Reti e Basi di Dati Lezione 6

DBMS (Data Base Management System)

Volumi di riferimento

DDL, VINCOLI D INTEGRITÁ, AGGIORNAMENTI E VISTE. SQL è più di un semplice linguaggio di interrogazione

Riccardo Dutto, Paolo Garza Politecnico di Torino. Riccardo Dutto, Paolo Garza Politecnico di Torino

1. BASI DI DATI: GENERALITÀ

Il software impiegato su un computer si distingue in: Sistema Operativo Compilatori per produrre programmi

Introduzione alle basi di dati. Gestione delle informazioni. Gestione delle informazioni. Sistema informatico

19. LA PROGRAMMAZIONE LATO SERVER

Definizione di domini

Una metodologia di progettazione di applicazioni web centrate sui dati

PROGRAMMAZIONE MODULARE. Periodo mensile. Ore previste

Basi di dati. Il Linguaggio SQL. K. Donno - Il Linguaggio SQL

Database. Si ringrazia Marco Bertini per le slides

LA REALIZZAZIONE DI APPLICAZIONI ALCUNE ARCHITETTURE

I MODULI Q.A.T. PANORAMICA. La soluzione modulare di gestione del Sistema Qualità Aziendale

LA REALIZZAZIONE DI APPLICAZIONI. Quattro parti: Gestione dati. Business rules. Logica applicativa. Interfaccia utente. Molte possibili architetture

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE.

Capitolo 1 Oracle: la società e il software Terminologia Oracle Corporation: la storia L offerta corrente 12 1.

MagiCum S.r.l. Progetto Inno-School

SQL Server Introduzione all uso di SQL Server e utilizzo delle opzioni Olap. Dutto Riccardo - SQL Server 2005.

LA GESTIONE DELLE VISITE CLIENTI VIA WEB

SQL Server Integration Services. SQL Server 2005: ETL - 1. Integration Services Project

Il linguaggio SQL: trigger. Versione elettronica: 04.7.SQL.trigger.pdf

Ministero della Pubblica Istruzione Ufficio Scolastico Regionale per la Sicilia Direzione Generale

Database e reti. Piero Gallo Pasquale Sirsi

PROGRAMMA CORSO Analista Programmatore JAVA - ORACLE

Sommario. Oracle Database 10g (laboratorio) Grid computing. Oracle Database 10g. Concetti. Installazione Oracle Database 10g

Introduzione Ai Data Bases. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San giovanni

Vincoli di Integrità Approccio dichiarativo alla loro implementazione

Procedura Gestione Pratiche Sicurezza Cantiere

Tecnologia di un Database Server (centralizzato) Introduzione generale

Il sistema IBM DB2. Sistemi Informativi T. Versione elettronica: L01.1.IntroduzioneDB2.pdf

Organizzazione delle informazioni: Database

CORSO ACCESS PARTE II. Esistono diversi tipi di aiuto forniti con Access, generalmente accessibili tramite la barra dei menu (?)

BASI DI DATI per la gestione dell informazione. Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone

Obiettivi d esame PHP Developer Fundamentals on MySQL Environment

Schema della base di dati del Catalogo dei Dati della Pubblica Amministrazione Renzo Orsini

PROGRAMMAZIONE MODULARE DI INFORMATICA CLASSE QUINTA - INDIRIZZO MERCURIO SEZIONE TECNICO

Sistema G.U.S. Capitolato di Gara ALLEGATO A

GERARCHIE RICORSIVE - SQL SERVER 2008

Il database management system Access

Indice Introduzione Elementi di base dei database Il linguaggio SQL (Structured Query Language)

Prefazione Sistemi informativi e basi di dati Il modello relazionale Il modello ER

MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena

Dispensa di database Access

lem logic enterprise manager

Uso delle basi di dati DBMS. Cos è un database. DataBase. Esempi di database

Informatica Generale Andrea Corradini Sistemi di Gestione delle Basi di Dati

Introduzione ai database relazionali

Regione Toscana. ARPA Fonte Dati. Manuale Amministratore. L. Folchi (TAI) Redatto da

L architettura di un DBMS

PROGRAMMA DI CLASSE 5AI

Organizzazione degli archivi

Azioni. Select e join non consentono di modificare il contenuto del DB. Inserzione di nuovi dati. Azioni desiderate. Aggiornamento di dati

SQL Server. Applicazioni principali

Capitolo 4 Pianificazione e Sviluppo di Web Part

Sistemi Informativi e Basi di Dati

WEBGIS 1.0. Guida per l utente

Basi di dati e Sistemi informativi aziendali

Il CMS Moka. Giovanni Ciardi Regione Emilia Romagna

Insegnamento di Informatica CdS Scienze Giuridiche A.A. 2006/7. Il trattamento dei dati

Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci

BMSO1001. Virtual Configurator. Istruzioni d uso 02/10-01 PC

Concetti fondamentali dei database database Cos'è un database Principali database

Archivi e database. Prof. Michele Batocchi A.S. 2013/2014

Progetto: ARPA Fonte Dati. ARPA Fonte Dati. Regione Toscana. Manuale Amministratore

Che cos'è un modulo? pulsanti di opzione caselle di controllo caselle di riepilogo

Sviluppata da: Lo Russo - Porcelli Pag. 1 di 6 6FRSR utilizzare il DBMS Postgresql per imparare il linguaggio SQL.

EXPLOit Content Management Data Base per documenti SGML/XML

BASE DI DATI: introduzione. Informatica 5BSA Febbraio 2015

MDAC. Attualmente la versione disponibile di MDAC è la 2.8 ma faremo riferimento alla 2.6. ADO Active Data Objects ADO OLE DB ODBC

Programma del Corso. Dati e DBMS SQL. Progettazione di una. Normalizzazione

2104 volume III Programmazione

Pag. 1. Gestione delle transazioni. Linguaggio SQL: costrutti avanzati. Esempio applicativo. Gestione delle transazioni. Prelievo. Esempio applicativo

ITI M. FARADAY Programmazione modulare a.s

Web Application Libro Firme Autorizzate

Linguaggio SQL: fondamenti. Basi di dati. Elena Baralis Pag. 1. Linguaggio SQL: fondamenti. Sistemi informativi. Introduzione

I comandi del linguaggio DDL (Data Definition Language): CREATE E ALTER

Laboratorio di Basi di Dati e Web

sito web sito Internet

Il linguaggio SQL. è di fatto lo standard tra i linguaggi per la gestione di data base relazionali.

Linguaggio SQL: costrutti avanzati

Giovanna Rosone 04/03/ /03/2010 SQL, Istruzioni per la modifica dello schema

Ottimizzazione delle interrogazioni (parte I)

Corso Analista Programmatore Web PHP Corso Online Analista Programmatore Web PHP

REGIONE BASILICATA UFFICIO S. I. R. S.

Indice generale. Capitolo 3 Introduzione a PHP...43 Sintassi e istruzioni di base Variabili, operatori e commenti Array...

Oracle PL/SQL. Motivazioni

Basi di dati. Docente: Andrea Bulgarelli. Università di Modena e Reggio Emilia. andrea.bulgarelli@gmail.com Argomento: presentazione corso (1.

Estensione di un sistema per la gestione semi-automatica di siti didattici con XML

SQL: concetti base SQL. Definizione dei dati in SQL. SQL: "storia"

IBM SPSS Statistics per Windows - Istruzioni di installazione (Licenza per utenti singoli)

DBMS. Esempi di database. DataBase. Alcuni esempi di DBMS DBMS. (DataBase Management System)

Corso Sistemi Informativi Avanzati. Programma 30 set Installazione Macchina Virtuale. Introduzione alla BI nelle Aziende.

L ARCHIVIAZIONE E LA GESTIONE DATI ATTRAVERSO L INTERAZIONE TRA MICROSOFT ACCESS ED EXCEL 1 INTRODUZIONE

Installazione e caratteristiche generali 1

Transcript:

Gubiani & Montanari Il DBMS Oracle 1 Il DBMS Oracle Express Edition Donatella Gubiani e Angelo Montanari

Il DBMS Oracle Il DBMS Oracle Oracle 10g Express Edition Il DBMS Oracle (nelle sue versioni più recenti 10g e 11g), è un DataBase Management System relazionale esteso presenta una struttura client/server è ampiamente compatibile con (ed estende) lo standard SQL g indica grid computing (il DBMS può essere visto come una griglia di risorse, ossia come un insieme di macchine eterogenee interconnesse per formare un ambiente che privilegia scalabilità e condivisione) Gubiani & Montanari Il DBMS Oracle 2

Oracle 10g e 11g Il DBMS Oracle Oracle 10g Express Edition Il DBMS Oracle 10g ha per primo introdotto funzionalità di grid computing. Il DBMS Oracle 11g presenta funzionalità aggiuntive e offre prestazioni migliori (non modifica, però le caratteristiche fondamentali del sistema). In particolare, fornisce strumenti per il clustering di basi di dati, l automazione di data center e la gestione dei workload. Sfruttando griglie (grid) altamente scalabili, composte da server e risorse di memoria a basso costo, consente di sviluppare applicazioni avanzate di data warehousing, content management ed elaborazione transazionale complessa. Nel seguito faremo riferimento al DBMS Oracle 10g. Gubiani & Montanari Il DBMS Oracle 3

Elementi Fondamentali Il DBMS Oracle Oracle 10g Express Edition Una base di dati Oracle è una collezione di file (di sistema) fra loro collegati che Oracle utilizza per memorizzare e gestire insiemi di dati A livello fisico, un istanza di una base di dati Oracle è composta da tre tipi principali di file: - file di dati - file di log - file di controllo Gubiani & Montanari Il DBMS Oracle 4

Oracle 10g Express Edition Il DBMS Oracle Oracle 10g Express Edition Oracle 10g Express Edition (abbreviato Oracle XE) è una versione gratuita (leggera) del DBMS Oracle 10g È facile da installare e gestire Può essere utilizzato attraverso un intuitiva interfaccia web che permette di: - amministrare la base di dati - creare tabelle, viste e altri schemi di oggetti - importare, esportare e visualizzare tabelle di dati - eseguire interrogazioni e script SQL - generare report Gubiani & Montanari Il DBMS Oracle 5

Interfaccia Introduzione Il DBMS Oracle Oracle 10g Express Edition Gubiani & Montanari Il DBMS Oracle 6

Il DBMS Oracle Oracle 10g Express Edition Interfacce e Programmazione Fornisce le interfacce SQL e PL/SQL identiche alle altre versioni di Oracle 10g Aggiunge una vasta gamma di interfacce di programmazione in diversi ambienti (come JAVA,.NET, PHP) Consente lo sviluppo e l implementazione rapida di nuove applicazioni Web È disponibile per sistemi operativi Windows a 32 bit e Linux Gubiani & Montanari Il DBMS Oracle 7

Limitazioni Introduzione Il DBMS Oracle Oracle 10g Express Edition Può servire un solo processore Gestisce un massimo di 4 GB di dati Utilizza un solo GB di RAM Su ogni macchina può essere eseguita un unica istanza di base di dati Gubiani & Montanari Il DBMS Oracle 8

Gestione utenti Memoria Statistiche I principali compiti dell amministratore sono: - settaggio dei parametri - gestione dei dati memorizzati - gestione della memoria della base di dati - gestione degli utenti - monitoraggio delle prestazioni della base di dati L amministrazione della base di dati può essere attuata attraverso l interfaccia di amministrazione di Oracle XE oppure attraverso l interfaccia di comandi SQL Gubiani & Montanari Il DBMS Oracle 9

Autenticazione Gestione utenti Memoria Statistiche L accesso alla base di dati avviene attraverso l autenticazione degli utenti Gubiani & Montanari Il DBMS Oracle 10

Gubiani & Montanari Il DBMS Oracle 11 Utenti Introduzione Gestione utenti Memoria Statistiche Alcuni account con privilegi di amministrazione sono creati automaticamente in fase di installazione Gli amministratori possono creare e gestire altri account utente

Creazione utenti Gestione utenti Memoria Statistiche Gubiani & Montanari Il DBMS Oracle 12

Memoria - 1 Introduzione Gestione utenti Memoria Statistiche Gubiani & Montanari Il DBMS Oracle 13

Memoria - 2 Introduzione Gestione utenti Memoria Statistiche Gubiani & Montanari Il DBMS Oracle 14

Statistiche Introduzione Gestione utenti Memoria Statistiche Gubiani & Montanari Il DBMS Oracle 15

Creazione di tabelle - 1 Creazione di tabelle Modifica delle tabelle Si possono creare tabelle utilizzando il comando SQL CREATE TABLE Con Oracle Database XE tale operazione può essere fatta in due modalità - usando l interfaccia per eseguire codice SQL (singoli comandi o script) - creando la tabella mediante l apposito tool Browser Oggetti Gubiani & Montanari Il DBMS Oracle 16

Creazione di tabelle - 2 Creazione di tabelle Modifica delle tabelle Gubiani & Montanari Il DBMS Oracle 17

Creazione di tabelle - 3 Creazione di tabelle Modifica delle tabelle Gubiani & Montanari Il DBMS Oracle 18

Gubiani & Montanari Il DBMS Oracle 19 Vincoli Introduzione Creazione di tabelle Modifica delle tabelle Specificano le proprietà che devono essere soddisfatte da ogni istanza Tipi di vincoli: - PRIMARY KEY - FOREIGN KEY - CHECK - UNIQUE - NOT NULL Possono essere definiti in fase di creazione (CREATE TABLE) o attraverso la successiva modifica di tabelle (ALTER TABLE)

Creazione di tabelle Modifica delle tabelle Sintassi CREATE TABLE - 1 Gubiani & Montanari Il DBMS Oracle 20

Creazione di tabelle Modifica delle tabelle Sintassi CREATE TABLE - 2 Gubiani & Montanari Il DBMS Oracle 21

Modifica di tabelle Creazione di tabelle Modifica delle tabelle In Oracle Database XE, una tabella può essere modificata: - utilizzando il Browser degli Oggetti - utilizzando comandi SQL Gubiani & Montanari Il DBMS Oracle 22

Sintassi ALTER TABLE - 1 Creazione di tabelle Modifica delle tabelle Gubiani & Montanari Il DBMS Oracle 23

Sintassi ALTER TABLE - 2 Creazione di tabelle Modifica delle tabelle Gubiani & Montanari Il DBMS Oracle 24

Sintassi ALTER TABLE - 3 Creazione di tabelle Modifica delle tabelle Gubiani & Montanari Il DBMS Oracle 25

Oracle Database XE prevede una serie di meccanismi per la memorizzazione, la gestione e il recupero delle informazioni - aggiornamento dei dati - interrogazione della base di dati Gubiani & Montanari Il DBMS Oracle 26

Le operazioni di inserimento, aggiornamento e cancellazione possono essere effettuate attraverso i costrutti standard SQL - INSERT: per aggiungere righe ad una tabella - UPDATE: per modificare le righe di una tabella - DELETE: per cancellare righe da una tabella Gubiani & Montanari Il DBMS Oracle 27

INSERT, UPDATE e DELETE In alternativa all utilizzo dei comandi SQL, può essere sfruttata l interfaccia Browser degli Oggetti Gubiani & Montanari Il DBMS Oracle 28

Sintassi INSERT Gubiani & Montanari Il DBMS Oracle 29

Caricamento dei dati Le utility presenti nell interfaccia applicativa permettono di caricare i dati anche con altre modalità: - XML - da fogli di calcolo - da file di testo Gubiani & Montanari Il DBMS Oracle 30

Registrazione o cancellazione delle modifiche Per quanto riguarda la registrazione o la cancellazione delle modifiche effettuate, si possono fare dei controlli sull esito delle transazioni e, successivamente, eseguire l operazione di COMMIT (che rende i cambiamenti effettuati permanenti) o l operazione di ROLLBACK (che annulla i cambiamenti) l uso della modalità di autocommit (commit automatico) Gubiani & Montanari Il DBMS Oracle 31

Interrogazione dei dati Per accedere ai dati contenuti nelle tabelle bisogna utilizzare il comando SQL SELECT Gubiani & Montanari Il DBMS Oracle 32

Interrogazione In Oracle Database XE, è possibile specificare un comando di tipo SELECT sia scrivendo in modo esplicito (testuale) un interrogazione SQL sia utilizzando lo strumento Query Builder/Costruzione Guidata Query Gubiani & Montanari Il DBMS Oracle 33

Query Builder - 1 Gubiani & Montanari Il DBMS Oracle 34

Query Builder - 2 Gubiani & Montanari Il DBMS Oracle 35

Cos è PL/SQL? Introduzione PL/SQL sta per SQL Procedural Language ed è un estensione procedurale di SQL PL/SQL mette a disposizione un ambiente di programmazione robusto che consente di utilizzare i costrutti tipici dei linguaggi imperativi e tecniche di programmazione object-oriented (incapsulamento, information hiding, function overloading) Gubiani & Montanari Il DBMS Oracle 36

Perchè PL/SQL? PL/SQL prevede: - variabili, costanti e tipi - costrutti di selezione e di iterazione I principali benefici dell utilizzo del linguaggio PL/SQL sono: - integrazione di costrutti procedurali in SQL - riduzione della congestione di rete (blocchi) - sviluppo modulare dei programmi - integrazione con altri strumenti di sviluppo e programmazione (Oracle Forms, Oracle Reports,..) - portabilità - gestione delle eccezioni Gubiani & Montanari Il DBMS Oracle 37

Creazione di un blocco PL/SQL Il costrutto di base in PL/SQL è il blocco Un blocco è un insieme di comandi SQL o PL/SQL Un blocco è composto da tre parti: - dichiarazioni (opzionale) - componente eseguibile (necessaria) - gestione delle eccezioni (opzionale), annidata all interno della componente eseguibile Gubiani & Montanari Il DBMS Oracle 38

Programmi PL/SQL Un programma PL/SQL è composto da uno o più blocchi Esistono tre tipi di blocchi: - blocchi anonimi (anonymous blocks): blocchi inseriti in un applicazione o definiti interattivamente - procedure: blocchi che accettano in input un insieme di valori per un insieme (eventualmente vuoto) di parametri necessari all esecuzione dei comandi e non restituiscono (in modo esplicito) un valore in uscita - funzioni: blocchi che accettano in input un insieme di valori per un insieme (eventualmente vuoto) di parametri e restituiscono (in modo esplicito) un valore in uscita Gubiani & Montanari Il DBMS Oracle 39

Trigger - 1 Introduzione I trigger permettono di aggiungere funzionalità che devono essere eseguite al verificarsi di specifiche condizioni (operazioni sulla base di dati) Esempi: - il sistema solleva un eccezione/errore in quanto il nuovo dato che si vuole inserire in una tabella e il contenuto corrente della tabella (della base di dati) sono inconsistenti (va eseguito un rollback della transazione) - nel momento in cui viene inserito un dato in una tabella, va modificato un altro dato Gubiani & Montanari Il DBMS Oracle 40

Trigger - 2 Introduzione I trigger possono essere usati per: - effettuare controlli di sicurezza - assicurare l integrità dei dati Tipi di trigger: - trigger applicativi: eseguiti nel momento in cui si verifica uno specifico evento legato ad una data applicazione - trigger di base di dati: eseguiti quando si verifica un particolare evento che coinvolge i dati presenti nella base di dati (ad esempio, inserimento) o un evento di sistema (ad esempio, login/logout o shutdown) Gubiani & Montanari Il DBMS Oracle 41

Sintassi CREATE TRIGGER Gubiani & Montanari Il DBMS Oracle 42

Esempio Trigger Un esempio. Aggiungiamo un attributo (derivato) numemp alla tabella Department che memorizza il numero di dipendenti di ogni dipartimento. Aggiorniamo la tabella sulla base dei dati correnti e, successivamente, associamo alla tabella Employee i trigger necessari per mantenere l attributo derivato numemp sempre aggiornato. Gubiani & Montanari Il DBMS Oracle 43

Esempio Trigger - SQL Gubiani & Montanari Il DBMS Oracle 44

Esempio Trigger - Browser degli Oggetti Gubiani & Montanari Il DBMS Oracle 45

Utilizzo di procedure e funzioni Procedure e funzioni sono blocchi di codice che raggruppano sequenze di comandi SQL e/o PL/SQL Permettono il riuso del codice Gubiani & Montanari Il DBMS Oracle 46

CREATE PROCEDURE Una procedura può essere creata con il comando CREATE PROCEDURE Gubiani & Montanari Il DBMS Oracle 47

Parametri Introduzione I parametri sono utilizzati per trasferire valori fra l ambiente chiamante e quello della procedura I parametri possono essere passati secondo tre metodologie: - IN: passa un valore dal chiamante alla procedura - OUT: passa un valore dalla procedura al chiamante - IN OUT: passa un valore dal chiamante alla procedura e un valore, eventualmente diverso, dalla procedura al chiamante mediante lo stesso parametro Gubiani & Montanari Il DBMS Oracle 48

CREATE PROCEDURE: Esempio - 1 Una procedura che aggiorni la tabella Department inserendo il numero degli impiegati del dipartimento Nota: è quanto avevamo fatto in precedenza con una semplice istruzione SQL Gubiani & Montanari Il DBMS Oracle 49

CREATE PROCEDURE: Esempio - 2 Gubiani & Montanari Il DBMS Oracle 50

CREATE PROCEDURE: Esempio - 3 Gubiani & Montanari Il DBMS Oracle 51

CREATE PROCEDURE con Parametri: Esempio - 1 Una procedura che, dato un dipartimento, incrementa il valore di numemp di 1 Nota: è quanto avevamo fatto in precedenza con il (corpo del) trigger Gubiani & Montanari Il DBMS Oracle 52

CREATE PROCEDURE con Parametri: Esempio - 2 Gubiani & Montanari Il DBMS Oracle 53

CREATE PROCEDURE con Parametri: Esempio - 3 Gubiani & Montanari Il DBMS Oracle 54

CREATE FUNCTION Una funzione è un blocco PL/SQL con degli eventuali parametri che restituisce un valore Una funzione può essere creata con il comando CREATE FUNCTION Gubiani & Montanari Il DBMS Oracle 55

CREATE FUNCTION: Esempio - 1 Una funzione che, dato il numero di matricola di un dipendente, restituisce il nome del dipartimento per cui lavora Gubiani & Montanari Il DBMS Oracle 56

CREATE FUNCTION: Esempio - 2 Gubiani & Montanari Il DBMS Oracle 57

CREATE FUNCTION: Esempio - 3 Gubiani & Montanari Il DBMS Oracle 58

PL/SQL: Strutture di Controllo IF THEN IF THEN ELSE IF THEN ELSIF CASE LOOP (EXIT - EXIT WHEN) WHILE LOOP FOR LOOP GOTO Gubiani & Montanari Il DBMS Oracle 59

PL/SQL: Cursori Gubiani & Montanari Il DBMS Oracle 60

PL/SQL: Esempio Gubiani & Montanari Il DBMS Oracle 61

Application Builder Application Builder Altri ambienti L Application Builder è un componente APEX (Oracle Application Express) che può essere utilizzato per la creazione rapida di applicazioni/interfacce HTML Gubiani & Montanari Il DBMS Oracle 62

Altri ambienti Introduzione Application Builder Altri ambienti PHP Developer: per lo sviluppo di applicazioni che utilizzano PHP per l accesso e la modifica dei dati Java Developer: per lo sviluppo di applicazioni Java che accedono e modificano i dati utilizzando Java e JDBC.NET Developer: per lo sviluppo di applicazioni per l accesso e la modifica dei dati.net Gubiani & Montanari Il DBMS Oracle 63

Gubiani & Montanari Il DBMS Oracle 64 Sito di riferimento Oracle: http://www.oracle.com Documentazione specifica Oracle Database XE: http://www.oracle.com/technology/xe/documentation