A. Veneziani Primi elementi di Linguaggio SQL

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "A. Veneziani Primi elementi di Linguaggio SQL"

Transcript

1 A. Veneziani Primi elementi di Linguaggio SQL SQL SQL (Structured Query Language) E un linguaggio tipico dei DBMS (DataBase Managment System) di tipo relazionale, che sono stati fino ad ora una parte prevalente dei sistemi software per la gestione dei dati, talora abbreviati come RDBMS (Relational DataBase Managment System). Il linguaggio è stato più volte standardizzato per cui esso ha mantenuto una forte similitudine su tutti i DBMS, a vantaggio della portabilità di script e query. E un linguaggio che può essere usato in due modalità: Stand-alone SQL viene utilizzato da solo, ossia dando direttamente comandi nel linguaggio stesso o utilizzando script che contengano serie di comandi che poi vengono eseguiti in sequenza. Embedded SQL viene utilizzato abbinato ad un qualunque linguaggio di programmazione (C++, Object Pascal, C#, Java, PHP, ASP, ecc.) sia per applicazioni desktop che per applicazioni Web, interpretato o compilato. Il linguaggio di programmazione che ospita SQL controlla il flusso logico principale del programma, e quando necessario invia comandi SQL al DBMS per ricavarne dati o compiere altre operazioni (quali inserimenti, cancellazioni, aggiornamenti ecc.). In tal modo SQL ed il linguaggio che lo ospita collaborano per un efficiente interfacciamento della base di dati con la parte di presentazione / gestione degli stessi. In un comune DBMS tutte le operazioni sono effettuabili da console dando esclusivamente comandi SQL. Quindi in pratica si può dire che un DBMS relazionale può essere controllato completamente tramite linguaggio SQL. L insieme dei comandi SQL, essendo particolarmente vasto e diversificato, può essere suddiviso in varie parti: Query Language parte del linguaggio che permette l estrazione selettiva di dati dal DBMS DML Data Manipulation Language - Parte del linguaggio che permette le operazioni di modifica dei dati, quali cancellazioni, inserimenti, modifica degli stessi DDL Data Definition Language Parte del linguaggio che permette di definire ed eventualmente modificare la struttura interna logica di un DB, ossia le tabelle, il numero ed il tipo di campi, i vincoli a cui tali campi devono sottostare, ecc. DCL Data Control Language Parte del linguaggio preposta a regolare i permessi di accesso dei vari utenti, e/o creare opportunamente nuove utenze. Vediamo ora i vari comandi utilizzabili in console per effettuare diverse operazioni su un DB: Creazione di un database Il comando SQL per creare la creazione di un nuovo DB è: CREATE DATABASE <nome database>; ad esempio CREATE DATABASE prova; Cancellazione di un DB Il comando per eliminare (in modo definitivo un database e tutti i dati che contiene) è: DROP DATABASE <nome database>; ad esempio: DROP DATABASE prova; Pagina 1

2 Messa in uso di un DB Esistendo più DB sotto il controllo del DBMS, è necessario indicare su quale il DBMS debba operare in quel momento. Questo ovviamente non esclude che il DB in uso possa essere poi successivamente cambiato. Tale operazione può essere fatta con: USE <nome database>; ad esempio: USE prova; Creazione di tabelle in un DB Si effettua con il noto comando CREATE TABLE. Il comando ha la struttura generale: CREATE TABLE <tabella> ( <nome campo 1> <tipo campo 1> <opzioni campo 1>, <nome campo 2> <tipo campo 2> <opzioni campo 2>,. ); Il comando fa parte del DDL in quanto definisce la struttura del DB. Per i numerosi dettagli sul comando vedi dispense sui vari database implementati. Modifica di una tabella Si effettua con il comando ALTER TABLE. Anche questo comando diverse varianti ed è piuttosto complesso, quindi indicherò qui solo le forme più usate ed elementari del comando stesso. Supponiamo di avere una tabella minima denominata Persone, di una sola colonna: CREATE TABLE Persone ( Id_Persona INT UNSIGNED ); e volerla modificare ed ampliare. Se ad esempio dovessimo rendere chiave primaria proprio il campo appena definito (CF codice fiscale): ADD PRIMARY KEY(Id_Persona); e se dovessimo eventualmente togliere la chiave primaria appena definita dalla tabella potremo farlo con il comando: DROP PRIMARY KEY; (in questo caso non c è bisogno di specificare il campo da cui eleminare il vincolo, perché esso è già noto al DBMS). Per aggiungere altre colone potremo procedere con degli ulteriori comandi ALTER TABLE: ADD Nome VARCHAR(40) NOT NULL; e così per la colonna Cognome: ADD Cognome VARCHAR(40) NOT NULL; Una variante della sintassi permette di effettuare le modifiche in modo cumulato fra loro, senza ripetere il comando, miscelando anche le varie modalità che sono stanzialmente ADD, DROP, MODIFY: MODIFY Nome VARCHAR(50) NOT NULL, ADD DataNascita DATE NOT NULL; in modo simile è possibile persino aggiungere vincoli di integrità o di integrità referenziale: Pagina 2

3 ADD CHECK(DataNascita <= NOW()); Supponiamo infatti di aver creato una opportuna tabella che raggruppi i cellulari (ad uso personale) di alcune persone: CREATE TABLE Cellulari ( NumCell INT UNSIGNED ); modificandola opportunamente con un ALTER TABLE: ALTER TABLE Cellulari ADD PRIMARY KEY(NumCell), ADD Marca VARCHAR(40) NOT NULL, ADD Modello VARCHAR(30) NOT NULL; successivamente, considerando tale tabella in relazione 1 a N con Persone, sarà anche possibile aggiungere un opportuna colonna chiave esterna ed un vincolo di integrità referenziale a Cellulari: ALTER TABLE Cellulari ADD CF INT UNSIGNED NOT NULL, ADD FOREIGN KEY(CF) REFERENCES Persone(CF); Vincoli In alcuni casi i campi (colonne) di una tabella creata, sono da sottoporre a vincoli. In una prima serie di casi i vincoli riguardano campi della stessa tabella e si riferiscono alla stessa tupla: a) In alcuni casi tali vincoli sono sui valori di una certa colonna che devono sottostare a certe limitazioni In tal caso si risolve il problema con l istruzione CHECK. Ad esempio per controllare che una data di nascita sia precedente o al massimo coincidente con la data odierna: CHECK (DataNascita <= NOW()) b) In altri casi le limitazioni considerano i valori di due diversi campi ma pur sempre della tupla corrente: CHECK(DataLaurea > DataNascita) Si tenga presente a questo proposito che l istruzione CHECK non è attiva tranne che nelle ultimissime versioni. Il comando deve essere parte di una CREATE TABLE o inserito in un comando ALTER TABLE. Ad esempio: ALTER TABLE elettori ADD CHECK(elettori.DataNascita <= NOW()); Un'altra tipologia di vincoli, diversa dalla precedente è quando i valori del campo debbano trovare limitazioni in base a valori assunti sullo stesso campo da altre tuple: a) Ad esempio nel caso di chiavi primarie si ha comunque un vincolo che però opera su tuple diverse, controllando i valori relativi allo stesso campo: Per istituire un vincolo di tale specie è possibile scrivere: PRIMARY KEY(<campo 1>) Sempre inserito in un comando di definizione di tabella CREATE TABLE, o un comando di modifica della tabella stessa ALTER TABLE. Nel caso il vincolo PRIMARY KEY sia applicato a più campi:.primary KEY(<campo1 >, <campo 2> ) si intende che la loro combinazione non debba ripetersi (e non il singolo campo) ed il valore NULL non sia mai presente contemporaneamente su tutti i campi indicati. Un ulteriore tipo di vincolo, sempre riguardante la non ripetizione dei valori di un certo campo è UNIQUE:.UNIQUE(<campo 1>, <campo 2> ). Pagina 3

4 Esso può essere applicato ad uno o più campi. Se applicato a più campi Permette però a differenza della chiave primaria (PRIMARY KEY), il valore NULL, e comunque indica un campo vincolato dall univocità non chiave primaria. Infine si possono considerare i cosiddetti vincoli di integrità referenziale in cui i valori che una chiave esterna può assumere sono legati a quelli della corrispondente chiave primaria, questo per mantenere una coerenza interna del DB, definiti da comandi del tipo: FOREIGN KEY(<campo chiave esterna>) REFERENCES <tabella>(<campo chiave primaria>) Campi AUTO_INCREMENT Molto spesso, quando la chiave primaria di una tabella sia intera, e si desideri che la generazione dei suoi valori sia prodotta automaticamente, è possibile utilizzare un sistema di generazione interna del DBMS della chiave, basato sull autoincremento del valore precedentemente generato. In definitiva il sistema si basa su un contatore interno (uno per tabella), che ricorda l ultimo valore intero generato per la chiave primaria e lo incrementa, così da essere certo che nessuna ripetizione possa verificarsi. Per avere una chiave primaria così regolata basta aggiungere la specifica AUTO_INCREMENT alla colonna definita come chiave primaria. Ad es: CREATE TABLE Persone ( Id_Persona INT UNSIGNED PRIMARY KEY AUTO_INCREMENT,. In tal modo il valore interno alla colonna Id_Persona non dovrà essere indicato, ma verrà generato automaticamente, via via sempre diverso, dal valore 1, a valori sempre più alti con passi unitari di incremento. Cancellazione di una tabella Per cancella una intera tabella basta utilizzare il comando: DROP TABLE <nome tabella>; Attenzione! La cancellazione di una tabella potrebbe non essere possibile in presenza di dati sottoposti a vincolo di integrità referenziale. Cancellazione dei dati di una tabella Diverso concetto e diverso comando è quello con cui si cancellano i dati da una tabella (lasciando ovviamente invariata la tabella stessa). Per cancellare tutti i dati da una tabella si utilizzerà il comando: DELETE FROM <nome tabella>; (senza alcuna condizione). Se invece si volessero cancellare selettivamente solo alcuni dati della tabella, allora si deve inserire una condizione aggiuntiva: DELETE FROM <nome tabella> WHERE <condizione>; ove <condizione> è una condizione di selezione, semplice o composta (ossia combinata da operatori AND OR e NOT presenti anche nel linguaggio SQL. Possibili esempi di condizioni sono: Cognome = Rossi ; DataNascita > ; e simili. Quindi si potrebbe avere una cancellazione con condizione del tipo: DELETE FROM Persone WHERE DataNascita >= AND DataNascita <= ; Pagina 4

5 Inserimento dati in una tabella Un altro comando per la manipolazione dei dati nei DB e quindi nelle loro tabelle è quello per l inserimento dei dati. Per inserire dei dati in una tabella si utilizza il comando: INSERT INTO <nome tabella> VALUES(<valore campo1>, <valore campo 2>,..); in questo caso devono essere indicati i valori di tutti i campi presenti nella tabella. Se un campo ammette il valore NULL, sarà ammesso indicarlo come valore inserito, scrivendolo senza apici o virgolette. Se il primo campo è chiave primaria AUTO_INCREMENT, il valore della relativa colonna, sarà indicato, nel comando INSERT precedente con un NULL: INSERT INTO Persone VALUES(NULL, 'Mario', 'Rossi', ' '); ciò indica che il valore della colonna con autoincremento deve rimanere libero a seconda di quanto il DBMS lo abbia fissato. Una variante del comando è: INSERT INTO <nome tabella>(<nome campo 1>, <nome campo 2>,.) VALUES(<valore campo1>, <valore campo 2>,..); in tal caso si fissa di assegnare valori solo ad alcune colonne e lasciare altre libere. Le colonne il cui valore non è stato indicato, vengono valorizzate secondo i valori di default. Se non sono stati indicati valori di default specifici per una colonna, esistono valori di default convenzionali, che sono: Tipo Valore di default INT, SMALLINT; TINYINT 0 BIT 0 DATE TIME 00:00:00 CHAR(n) (stringa nulla) VARCHAR(n) (stringa nulla) ENUM( v1, v2, v3, ) v1 Se la colonna della quale non sono specificati i valori ammette valore NULL, allora essa sarà valorizzata con NULL. Un esempio d uso della seconda sintassi data la tabella Persone definita come: CREATE TABLE `persone` ( `Id_Persona` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, `Nome` VARCHAR(50) NOT NULL, `Cognome` VARCHAR(40) NOT NULL, `DataNascita` DATE NOT NULL, PRIMARY KEY (`Id_Persona`) ) Può essere INSERT INTO Persone(Nome, Cognome) VALUES( 'Mario', 'Rossi'); Aggiornamento dei dati di una tabella L operazione di modifica dei dati di alcune colonne di alcune tuple di una tabella viene effettuata con l istruzione SQL: UPDATE <nome tabella> SET <nome colonna 1> = <valore 1>, <nome colonna 2> = <valore 2>, WHERE <condizione>; Usualmente la condizione indicata sebbene non obbligatoria, è presente, perché altrimenti il valore inserito viene esteso a tutte le tuple della tabella (cosa che di solito non si desidera accada). Pagina 5

6 Ad esempio per cambiare il nome della persona di id 1 a Paolo effettuerò: UPDATE Persone SET Nome = 'Paolo' WHERE Id_Persona = 1; Operazioni di Query Query semplici In SQL si possono effettuare semplici operazioni di estrazione di dati. Tipicamente la forma più semplice dell istruzione SELECT ha la forma: SELECT <campi> FROM <tabella> WHERE <condizione>; Inizialmente consideriamo estrazioni da una sola tabella. Le operazioni più comuni sono quelle di: Proiezione Ossia includere nel risultato della query solo i dati di alcune colonne desiderate ed escludere altri dati presenti nei risultati ma non di interesse. Ad es: SELECT Nome, Cognome FROM Persone Se si ritiene necessario visualizzare tutte le colonne rese disponibili dalla operazione di selezione allora si utilizzerà la dicitura *. Ad esempio: SELECT * FROM Persone Renderà disponibili tutte le colonne presenti nella tabella Persone. Selezione - Alla operazione si proiezione (recuperiamo solo i dati dei campi Nome e Cognome) si potrà combinare quella di selezione, ossia filtrare tuple che soddifino le condizioni poste: SELECT Nome, Cognome FROM Persone WHERE DataNascita <> ' '; (in questo caso la ricerca delle persone con data di nascita valida). I due tipi di operazioni possono essere svolte singolarmente od in modo combinato. Come sempre la condizione potrà essere composita, vale a dire: SELECT Nome, Cognome FROM Persone WHERE Id_Persona > 3 AND Id_Persona < 6; In alcuni casi queste query potrebbero anche non rendere alcuna tupla, ossia l insieme delle tuple che sottostanno alla condizione posta potrebbe essere vuoto. Prodotto cartesiano Si indica come prodotto cartesiano tra due insiemi, la combinazione di tutti gli elementi del primo insieme con tutti quelli del secondo insieme. Consideriamo due tabelle in associazione 1 a N tra Persone ed il /i loro cellulari personali. Il prodotto cartesiano viene considerato in SQL soprattutto per il fatto che nelle query viene assai spesso utilizzato un suo sottoinsieme derivante dall operazione detta di inner join (o join naturale). Il prodotto cartesiano di Persone combinate con Cellulari potrà essere effettuato con l istruzione SQL: SELECT * FROM Persone, Cellulari L operazione porta ad una combinazione di tutte le tuple di Persone combinate con quelle di Cellulari, indipendentemente dal fatto che le tuple siano o meno associate tramite i valori dei campi Id_persona (chiave primaria / chiave esterna). Pagina 6

7 mysql> SELECT * FROM Persone; Id_Persona Nome Cognome DataNascita Paolo Bianchi Mario Rossi Gianni Bianchi Nino Neri rows in set (0.00 sec) mysql> SELECT * FROM Cellulari; NumCell Marca Modello Tipo Id_Persona Huawei P9 Lite 4G Apple IPhone 5 4G Samsung J6 4G Motorola TAC 4G rows in set (0.00 sec) mysql> SELECT * FROM Persone, Cellulari; Id_Persona Nome Cognome DataNascita NumCell Marca Modello Tipo Id_Persona 1 Paolo Bianchi Huawei P9 Lite 4G 1 2 Mario Rossi Huawei P9 Lite 4G 1 3 Gianni Bianchi Huawei P9 Lite 4G 1 6 Nino Neri Huawei P9 Lite 4G 1 1 Paolo Bianchi Apple IPhone 5 4G 3 2 Mario Rossi Apple IPhone 5 4G 3 3 Gianni Bianchi Apple IPhone 5 4G 3 6 Nino Neri Apple IPhone 5 4G 3 1 Paolo Bianchi Samsung J6 4G+ 1 2 Mario Rossi Samsung J6 4G+ 1 3 Gianni Bianchi Samsung J6 4G+ 1 6 Nino Neri Samsung J6 4G+ 1 1 Paolo Bianchi Motorola TAC 4G 2 2 Mario Rossi Motorola TAC 4G 2 3 Gianni Bianchi Motorola TAC 4G 2 6 Nino Neri Motorola TAC 4G 2 16 rows in set (0.00 sec) Inner join L operazione di inner join tra due insiemi di tuple mette in correlazione solo le tuple coinvolte nelle associazioni e non tutte indistintamente. Per raggiungere questo scopo però spesso si parte da un insieme che coincide con l insieme pari al prodotto cartesiano, per poi selezionare solo le tuple che sono associate: SELECT * FROM Persone, Cellulari WHERE Persone.Id_Persona = Cellulari.Id_Persona; mysql> SELECT * -> FROM Persone, Cellulari -> WHERE Persone.Id_Persona = Cellulari.Id_Persona; Id_Persona Nome Cognome DataNascita NumCell Marca Modello Tipo Id_Persona 1 Paolo Bianchi Huawei P9 Lite 4G 1 3 Gianni Bianchi Apple IPhone 5 4G 3 Pagina 7

8 1 Paolo Bianchi Samsung J6 4G+ 1 2 Mario Rossi Motorola TAC 4G 2 4 rows in set (0.00 sec) Come si può osservare i record della tabella Persone ora non sono collegati più in modo combinatorio con i record della tabella Cellulari, ma le tuple in relazione sono solo quelle che dovrebbero effettivamente esserlo, ossia quelle delle persone e ad ogni persona associato ognuno dei cellulari di sua proprietà. Quindi questo comando produce e rispecchia effettivamente la correlazione logica dei dati nel DB, e per questo motivo è usato in modo assai frequente in quasi tutte le query. Un altro modo per scrivere lo stesso comando è: SELECT * FROM Persone INNER JOIN Cellulari ON Persone.Id_Persona = Cellulari.Id_Persona; In genere utilizzeremo la prima forma, che si basa appunto su una selezione, rispetto al prodotto cartesiano generico, di tutte le tuple che esprimano effettivamente una relazione sui valori di chiave primaria / esterna (Id_Persona). Ovviamente un inner join può coinvolgere anche una serie di più tabelle se la query da programmare lo richiede. Semplici applicazioni di tale tipo di operazione possono essere dei problemi del tipo: Individuare tutte le persone che hanno cellulari Huawei mysql> SELECT Persone.* -> FROM Persone, Cellulari -> WHERE Persone.Id_Persona = Cellulari.Id_Persona AND -> Cellulari.Marca = 'Huawei'; Id_Persona Nome Cognome DataNascita Paolo Bianchi row in set (0.00 sec) Individuare i cellulari di Mario Rossi mysql> SELECT Cellulari.* -> FROM Persone, Cellulari -> WHERE Persone.Id_Persona = Cellulari.Id_Persona AND -> Persone.Nome = 'Mario' AND Cognome = 'Rossi'; NumCell Marca Modello Tipo Id_Persona Motorola TAC 4G row in set (0.00 sec) Pagina 8

DATABASE PER IL WEB. Programmazione Web 1

DATABASE PER IL WEB. Programmazione Web 1 DATABASE PER IL WEB Programmazione Web 1 Archite3ura web con database Client Tier Web/App Tier DB Tier Client Web / App Server Database Il server web comunica con un altro server che con8ene il la banca

Dettagli

Esempio di database relazionale con l utilizzo del prodotto MySQL

Esempio di database relazionale con l utilizzo del prodotto MySQL Esempio di database relazionale con l utilizzo del prodotto MySQL Marco Liverani Aprile 2015 In queste pagine viene riportato in sintesi il progetto di un database relazionale esemplificativo con cui viene

Dettagli

2011 Politecnico di Torino 1

2011 Politecnico di Torino 1 SQL per le applicazioni Esercitazione PHP e MySQL Svolgimento D B M G Passi di risoluzione creazione e popolamento della base di dati Creazione di un script SQL Passo 2 creazione di una query d interrogazione

Dettagli

DBMS (Data Base Management System)

DBMS (Data Base Management System) Cos'è un Database I database o banche dati o base dati sono collezioni di dati, tra loro correlati, utilizzati per rappresentare una porzione del mondo reale. Sono strutturati in modo tale da consentire

Dettagli

SQL (STRUCTURED QUERY LANGUAGE)

SQL (STRUCTURED QUERY LANGUAGE) SQL (STRUCTURED QUERY LANGUAGE) Prof. Nicoletta D Alpaos & Prof. Andrea Borghesan SQL DDL Data Definition Language DML Data Manipulation Language DCL Data Control Language DDL Obiettivo: Definire la struttura

Dettagli

Il sistema informativo deve essere di tipo centralizzato e accessibile mediante un computer server installato nella rete locale dell albergo.

Il sistema informativo deve essere di tipo centralizzato e accessibile mediante un computer server installato nella rete locale dell albergo. PROBLEMA. Un albergo di una grande città intende gestire in modo automatizzato sia le prenotazioni sia i soggiorni e realizzare un database. Ogni cliente viene individuato, tra l altro, con i dati anagrafici,

Dettagli

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

Corso Sistemi Informativi Avanzati. Programma 30 set 2015. Installazione Macchina Virtuale. Introduzione alla BI nelle Aziende. Programma 30 set 205 Installazione Macchina Virtuale Introduzione alla BI nelle Aziende Introduzione SQL Macchina Virtuale È un emulazione di un computer su un altro computer Stesso punto di partenza per

Dettagli

Appunti di MySql. Evoluzione di un tutorial di base di mysql, scritto da Etel Sverdlov.

Appunti di MySql. Evoluzione di un tutorial di base di mysql, scritto da Etel Sverdlov. Appunti di MySql Evoluzione di un tutorial di base di mysql, scritto da Etel Sverdlov. Indice generale avviare la shell mysql...2 comandi SQL per la gestione del database (DDL)...2 visualizzare l'elenco

Dettagli

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

Basi di dati. Il Linguaggio SQL. K. Donno - Il Linguaggio SQL Basi di dati Il Linguaggio SQL Data Definition Language (DDL) Data Definition Language: insieme di istruzioni utilizzate per modificare la struttura della base di dati Ne fanno parte le istruzioni di inserimento,

Dettagli

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

SQL: concetti base SQL. Definizione dei dati in SQL. SQL: storia SQL SQL: concetti base originariamente "Structured Query Language", ora "nome proprio" linguaggio con varie funzionalità: contiene sia il DDL sia il DML ne esistono varie versioni vediamo gli aspetti essenziali,

Dettagli

SQL (STRUCTURED QUERY LANGUAGE)

SQL (STRUCTURED QUERY LANGUAGE) SQL (STRUCTURED QUERY LANGUAGE) Prof. Nicoletta D Alpaos & Prof. Andrea Borghesan SQL DDL Data Definition Language DML Data Manipulation Language DCL Data Control Language DDL Obiettivo: Definire la struttura

Dettagli

SISTEMI INFORMATIVI AZIENDALI. introduzione ai sistemi informativi 1

SISTEMI INFORMATIVI AZIENDALI. introduzione ai sistemi informativi 1 SISTEMI INFORMATIVI AZIENDALI introduzione ai sistemi informativi 1 Sistema Informativo Insieme degli strumenti, risorse e procedure che consentono la gestione delle informazioni aziendali e' essenziale

Dettagli

Esercitazione query in SQL L esercitazione viene effettuata sul database viaggi e vacanze che prevede il seguente modello E/R:

Esercitazione query in SQL L esercitazione viene effettuata sul database viaggi e vacanze che prevede il seguente modello E/R: Esercitazione query in SQL L esercitazione viene effettuata sul database viaggi e vacanze che prevede il seguente modello E/R: Si consiglia di creare il data base, inserire i dati nelle tabelle, provare

Dettagli

INTRODUZIONE ALLE BASI DATI RELAZIONALI

INTRODUZIONE ALLE BASI DATI RELAZIONALI INTRODUZIONE ALLE BASI DATI RELAZIONALI RELAZIONI E TABELLE Nelle BASI DI DATI RELAZIONALI le informazioni sono organizzate in TABELLE; Le tabelle sono rappresentate mediante griglie suddivise in RIGHE

Dettagli

CAPITOLO V. DATABASE: Il modello relazionale

CAPITOLO V. DATABASE: Il modello relazionale CAPITOLO V DATABASE: Il modello relazionale Il modello relazionale offre una rappresentazione matematica dei dati basata sul concetto di relazione normalizzata. I principi del modello relazionale furono

Dettagli

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

I comandi del linguaggio DDL (Data Definition Language): CREATE E ALTER Caratteristiche generali del linguaggio SQL Il linguaggio SQL è il linguaggio usato per la gestione dei database relazionali, cioè dei database creati con un DBMS di tipo relazionale. Esso nacque nella

Dettagli

Corso sul linguaggio SQL

Corso sul linguaggio SQL Corso sul linguaggio SQL Modulo L2B (SQL) 2.1 Comandi sui database 1 Prerequisiti Introduzione ai DB Linguaggi per database Tipi fondamentali di dati 2 1 Introduzione In questa Unità introduciamo il linguaggio

Dettagli

Corso di Informatica Generale 1 IN1. Linguaggio SQL

Corso di Informatica Generale 1 IN1. Linguaggio SQL Università Roma Tre Facoltà di Scienze M.F.N. di Laurea in Matematica di Informatica Generale 1 Linguaggio SQL Marco (liverani@mat.uniroma3.it) Sommario Prima parte: le basi dati relazionali Basi di dati:

Dettagli

MySQL Database Management System

MySQL Database Management System MySQL Database Management System http://www.mysql.com/ DATABASE RELAZIONALI Un database è una collezione strutturata di informazioni. I database sono delle strutture nelle quali è possibile memorizzare

Dettagli

Basi di Dati: Corso di laboratorio

Basi di Dati: Corso di laboratorio Basi di Dati: Corso di laboratorio Lezione 2 Raffaella Gentilini 1 / 45 Sommario 1 Il DDL di SQL: Cancellazione ed Aggiornamento di una BD Cancellazione di Schemi, Tabelle, e Domini Aggiornamento di Tabelle

Dettagli

Basi di Dati. Laboratorio Ing. G. Laboccetta Dott.ssa. V. Policicchio. Corso di Laurea in Informatica. a.a. 2010-2011

Basi di Dati. Laboratorio Ing. G. Laboccetta Dott.ssa. V. Policicchio. Corso di Laurea in Informatica. a.a. 2010-2011 Corso di Laurea in Informatica Basi di Dati a.a. 2010-2011 Laboratorio Ing. G. Laboccetta Dott.ssa. V. Policicchio PROGETTAZIONE FISICA SQL-DDL OBIETTIVO: Rappresentare i dati della realtà di interesse

Dettagli

Il linguaggio SQL: DDL di base

Il linguaggio SQL: DDL di base Il linguaggio SQL: DDL di base Sistemi Informativi T Versione elettronica: 04.1.SQL.DDLbase.pdf SQL: caratteristiche generali SQL (Structured Query Language) èil linguaggio standard de facto per DBMS relazionali,

Dettagli

Esame di Stato Istituto Tecnico Industriale Soluzione della Seconda Prova Indirizzo: INFORMATICA Tema: INFORMATICA Anno Scolastico: 2002-2003

Esame di Stato Istituto Tecnico Industriale Soluzione della Seconda Prova Indirizzo: INFORMATICA Tema: INFORMATICA Anno Scolastico: 2002-2003 Esame di Stato Istituto Tecnico Industriale Soluzione della Seconda Prova Indirizzo: INFORMATICA Tema: INFORMATICA Anno Scolastico: 2002-2003 Il primo punto richiede l analisi e lo sviluppo del progetto

Dettagli

Preparazione. Introduzione a MySQL: costruzione di una base di dati e gestione degli accessi. Accesso all area condivisa. Avvio Server MySQL

Preparazione. Introduzione a MySQL: costruzione di una base di dati e gestione degli accessi. Accesso all area condivisa. Avvio Server MySQL Introduzione a MySQL: costruzione di una base di dati e gestione degli accessi Stefania Marrara Elisa Quintarelli Lezione 1 2 ore a.a 2004/05 Preparazione Accesso all area condivisa Start -> Programs ->MySQL

Dettagli

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

Il linguaggio SQL. è di fatto lo standard tra i linguaggi per la gestione di data base relazionali. (Structured Query Language) : Il linguaggio è di fatto lo standard tra i linguaggi per la gestione di data base relazionali. prima versione IBM alla fine degli anni '70 per un prototipo di ricerca (System

Dettagli

Basi di Dati Relazionali

Basi di Dati Relazionali Corso di Laurea in Informatica Basi di Dati Relazionali a.a. 2009-2010 Laboratorio Ing. G. Laboccetta Dott.ssa. V. Policicchio Coadiutore: Dott.ssa D. Nicotera PROGETTAZIONE FISICA SQL-DDL OBIETTIVO: Rappresentare

Dettagli

Linguaggio SQL. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni

Linguaggio SQL. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni Linguaggio SQL Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni SQL: caratteristiche generali SQL (Structured Query Language) è il linguaggio standard de facto per DBMS relazionali, che

Dettagli

DATA BASE MANAGEMENT SYSTEM

DATA BASE MANAGEMENT SYSTEM DATA BASE (1) Problematica gestione dati: oggetti delle elaborazioni, difficili da gestire, memorizzare, reperire, modificare; talvolta ridondanti/incongruenti; non sufficientemente protetti; spesso comuni

Dettagli

BASI DI DATI. basi di dati - introduzione ai sistemi informativi 1

BASI DI DATI. basi di dati - introduzione ai sistemi informativi 1 BASI DI DATI basi di dati - introduzione ai sistemi informativi 1 Sistema Informativo Insieme degli strumenti, risorse e procedure che consentono la gestione delle informazioni aziendali e' essenziale

Dettagli

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

Data Base. Master Bio Info Reti e Basi di Dati Lezione 6 Data Base 1 Sommario I concetti fondamentali. Database Relazionale.. Query e SQL MySql, Creazione di un db in MySQL con PHPmyAdmin Creazione database e delle Tabelle Query Inserimento Ricerca Modifica

Dettagli

Corso di Basi di Dati A.A. 2013/2014

Corso di Basi di Dati A.A. 2013/2014 Corso di Laurea in Ingegneria Gestionale Sapienza Università di Roma Corso di Basi di Dati A.A. 2013/2014 Tiziana Catarci, Andrea Marrella Ultimo aggiornamento : 29/03/2014 SQL : Structured Query Language

Dettagli

Progetto B. Utenti. Di conseguenza si potranno avere solo utenti di questi tipi

Progetto B. Utenti. Di conseguenza si potranno avere solo utenti di questi tipi Progetto B Progettare un applicazione web basata su Servlet e JSP che permetta la collaborazione di diversi utenti nel creare, aggiornare e gestire un archivio di pagine personali degli autori di un giornale.

Dettagli

DUE GRUPPI DI COMANDI

DUE GRUPPI DI COMANDI LEZIONE16 SQL DDL PAG. 1 / 9 PROF. ANDREA ZOCCHEDDU LEZIONE16 SQL DDL LINGUAGGIO SQL DATA DESCRIPTION LANGUAGE DUE GRUPPI DI COMANDI I comandi del linguaggio SQL sono divisi in due grandi gruppi che formano

Dettagli

Il linguaggio SQL: le basi

Il linguaggio SQL: le basi Il linguaggio SQL: le basi Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: SQLa-basi.pdf Sistemi Informativi L-A SQL: caratteristiche generali

Dettagli

SQL. Laboratorio di Progettazione di Basi di Dati (CdS in Informatica e TPS)

SQL. Laboratorio di Progettazione di Basi di Dati (CdS in Informatica e TPS) 1 SQL Laboratorio di Progettazione di Basi di Dati (CdS in Informatica e TPS) a.a. 2014/2015 http://www.di.uniba.it/~lisi/courses/basi-dati/bd2014-15.htm dott.ssa Francesca A. Lisi francesca.lisi@uniba.it

Dettagli

Lezione V. Aula Multimediale - sabato 29/03/2008

Lezione V. Aula Multimediale - sabato 29/03/2008 Lezione V Aula Multimediale - sabato 29/03/2008 LAB utilizzo di MS Access Definire gli archivi utilizzando le regole di derivazione e descrivere le caratteristiche di ciascun archivio ASSOCIAZIONE (1:1)

Dettagli

IL LINGUAGGIO SQL IDENTIFICATORI E TIPI DI DATI COMANDI E ISTRUZIONI

IL LINGUAGGIO SQL IDENTIFICATORI E TIPI DI DATI COMANDI E ISTRUZIONI IL LINGUAGGIO SQL Il linguaggio SQL ( Structured Query Languages) è un linguaggio non procedurale che è diventato uno standard tra i linguaggi per la gestione dei database relazionali. Il linguaggio procedurale

Dettagli

PROGRAMMA DI CLASSE 5AI

PROGRAMMA DI CLASSE 5AI Istituto di Istruzione Superiore Euganeo Istituto tecnico del settore tecnologico Istituto professionale del settore servizi socio-sanitari Istituto professionale del settore industria e artigianato PROGRAMMA

Dettagli

SQL SQL. Definizione dei dati. Domini. Esistono 6 domini elementari:

SQL SQL. Definizione dei dati. Domini. Esistono 6 domini elementari: SQL SQL (pronunciato anche come l inglese sequel: acronimo di Structured Query Language (linguaggio di interrogazione strutturato Linguaggio completo che presenta anche proprietà di: DDL (Data Definition

Dettagli

Introduzione a MySQL

Introduzione a MySQL Introduzione a MySQL Cinzia Cappiello Alessandro Raffio Politecnico di Milano Prima di iniziare qualche dettaglio su MySQL MySQL è un sistema di gestione di basi di dati relazionali (RDBMS) composto da

Dettagli

Basi di Da( MySQL & MySQL Workbench. Anna Monreale

Basi di Da( MySQL & MySQL Workbench. Anna Monreale Basi di Da( MySQL & MySQL Workbench Anna Monreale MySQL MySQL è un DBMS gratuito ed open- source (h@p://www.mysql.com) MySQL può essere uilizzato in Windows, Linux, MacOS X. MySQL è un RDBMS (relaional

Dettagli

Vincoli di Integrità Approccio dichiarativo alla loro implementazione

Vincoli di Integrità Approccio dichiarativo alla loro implementazione Vincoli di Integrità Approccio dichiarativo alla loro implementazione Antonella Poggi Dipartimento di informatica e Sistemistica SAPIENZA Università di Roma Progetto di Applicazioni Software Anno accademico

Dettagli

Il linguaggio SQL: le basi. Versione elettronica: SQLa-basi.pdf

Il linguaggio SQL: le basi. Versione elettronica: SQLa-basi.pdf Il linguaggio SQL: le basi Versione elettronica: SQLa-basi.pdf SQL: caratteristiche generali SQL (Structured Query Language) è il linguaggio standard de facto per DBMS relazionali, che riunisce in sé funzionalità

Dettagli

INDICI. Prevediamo di effettuare spesso interrogazioni simili alle seguenti:

INDICI. Prevediamo di effettuare spesso interrogazioni simili alle seguenti: Date le tabelle: Clienti := < id, nome, cognome, indirizzo,città > Ordini := < id, data_ora_ordine, id_prodotto, id_cliente, quantità> Prodotti := < id, nome, descrizione, costo,scorte > INDICI Prevediamo

Dettagli

Corso sul linguaggio SQL

Corso sul linguaggio SQL Corso sul linguaggio SQL Modulo L2B (SQL) 2.2 Comandi sulle tabelle 1 Prerequisiti Introduzione ai DB Tabelle, relazioni e attributi Chiave primaria Chiave esterna Vincoli di integrità 2 1 Introduzione

Dettagli

Corso di Informatica (Basi di Dati)

Corso di Informatica (Basi di Dati) Corso di Informatica (Basi di Dati) Lezione 6 (15 gennaio 2009) Linguaggio SQL: Data Definition Language (DDL) Da: Atzeni, Ceri, Paraboschi, Torlone - Basi di Dati Lucidi del Corso di Basi di Dati 1, Prof.

Dettagli

Esercitazione: Il DBMS MySQL

Esercitazione: Il DBMS MySQL Laurea in Ingegneria Informatica SAPIENZA Università di Roma Insegnamento di Basi di Dati Esercitazione: Il DBMS MySQL Marco Console Aspetti Organizzativi Marco Console Sito: www.dis.uniroma1.it/~console

Dettagli

Definizione di domini

Definizione di domini Definizione di domini Come nei linguaggi ad alto livello (es. C) è possibile definire nuovi domini (tipi di dati) a partire da quelli predefiniti, anche se il costruttore è più limitato. create domain

Dettagli

Esercitazione di riepilogo sulle Query MySQL Giugno 2011 Classe VB Informatica

Esercitazione di riepilogo sulle Query MySQL Giugno 2011 Classe VB Informatica Istituto di Istruzione Superiore Alessandrini - Marino 1 Esercitazione di riepilogo sulle Query MySQL Giugno 2011 Classe VB Informatica Descrizione Un azienda commerciale che vende prodotti IT (computers,

Dettagli

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

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE. INFORMATICA Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE. APPLICAZIONI WEB L architettura di riferimento è quella ampiamente diffusa ed

Dettagli

Basi di Dati e Sistemi Informativi. Structured Query Language

Basi di Dati e Sistemi Informativi. Structured Query Language Basi di Dati e Sistemi Informativi Structured Query Language Corso di Laurea in Ing. Informatica Ing. Gestionale Magistrale SQL come DDL e DML SQL non è solo un linguaggio di interrogazione Linguaggio

Dettagli

Basi di dati Il linguaggio SQL

Basi di dati Il linguaggio SQL Basi di dati Il linguaggio SQL teoria e pratica con Microsoft Access Riepilogando Nelle basi di dati esiste 1. una parte invariante nel tempo, lo schema, costituita dalle caratteristiche dei dati (nomi

Dettagli

Basi di dati Il linguaggio SQL

Basi di dati Il linguaggio SQL Riepilogando Basi di dati Il linguaggio SQL Nelle basi di dati esiste 1. una parte invariante nel tempo, lo schema, costituita dalle caratteristiche dei dati (nomi degli attributi, domini, 2. una parte

Dettagli

Modulo 1 Information Communication Technology. ICT e computer... Pag. 6 Classificazione dei computer...» 8

Modulo 1 Information Communication Technology. ICT e computer... Pag. 6 Classificazione dei computer...» 8 I Indice generale 1 Introduzione all ICT Modulo 1 Information Communication Technology ICT e computer... Pag. 6 Classificazione dei computer...» 8 2 Come è fatto un computer I componenti di un personal

Dettagli

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

DDL, VINCOLI D INTEGRITÁ, AGGIORNAMENTI E VISTE. SQL è più di un semplice linguaggio di interrogazione SQL DDL, VINCOLI D INTEGRITÁ, AGGIORNAMENTI E VISTE SQL è più di un semplice linguaggio di interrogazione! Linguaggio di definizione dati (Data-definition language, DDL):! Crea/distrugge/modifica relazioni

Dettagli

Il linguaggio SQL. Evoluzione del linguaggio. I linguaggi dentro SQL. I dialeu SQL. U@lizzo di SQL SQL. A. Ferrari 1

Il linguaggio SQL. Evoluzione del linguaggio. I linguaggi dentro SQL. I dialeu SQL. U@lizzo di SQL SQL. A. Ferrari 1 Il linguaggio SQL Structured Query Language SQL è un linguaggio di interrogazione per database proge

Dettagli

SQL e ACCESS. Modello relazionale PROBLEMA ENTITA STUDENTE

SQL e ACCESS. Modello relazionale PROBLEMA ENTITA STUDENTE SQL e ACCESS Prof. Salvatore Multazzu (salvatoremultazzu@tiscali.it) Applicazioni Informatiche nella comunicazione Modello relazionale Entità Record o Ennuple Attributi o Campi Tipi Chiavi Primarie (PK)

Dettagli

SQL Laboratorio di Basi di Dati a.a. 2002/2003

SQL Laboratorio di Basi di Dati a.a. 2002/2003 1 SQL Laboratorio di Basi di Dati a.a. 2002/2003 dott.ssa Francesca A. Lisi lisi@di.uniba.it Orario di ricevimento: mercoledì ore 10-12 2 Cos'è SQL? Linguaggio di riferimento per le basi di dati relazionali

Dettagli

Capitolo 9. Esercizio 9.1. Esercizio 9.2

Capitolo 9. Esercizio 9.1. Esercizio 9.2 Capitolo 9 Esercizio 9.1 Considerare lo relazione in figura 9.19 e individuare le proprietà della corrispondente applicazione. Individuare inoltre eventuali ridondanze e anomalie nella relazione. Docente

Dettagli

Corso di Laboratorio di Basi di Dati

Corso di Laboratorio di Basi di Dati Corso di Laboratorio di Basi di Dati F1I072 - INF/01 a.a 2009/2010 Pierluigi Pierini Technolabs S.p.a. Pierluigi.Pierini@technolabs.it Università degli Studi di L Aquila Dipartimento di Informatica Technolabs

Dettagli

DBMS. DataBase Management System. L. Vigliano

DBMS. DataBase Management System. L. Vigliano DBMS DataBase Management System DBMS Un DataBase Management System è un sistema di gestione il cui obiettivo generale è mantenere le informazioni (ovvero qualsiasi cosa sia ritenuta interessante da un

Dettagli

Utilizzo collegamento remoto

Utilizzo collegamento remoto Utilizzo collegamento remoto Introduzione Il collegamento VPN (virtual private network) consente a PC collegati ad internet ma fisicamente fuori dalla rete interna regionale, di accedere, con le credenziali

Dettagli

Linguaggio SQL: fondamenti D B M G. Gestione delle tabelle

Linguaggio SQL: fondamenti D B M G. Gestione delle tabelle Linguaggio SQL: fondamenti Creazione di una tabella Modifica della struttura di una tabella Cancellazione di una tabella Dizionario dei dati Integrità dei dati 2 2007 Politecnico di Torino 1 Creazione

Dettagli

3.5.1 PREPARAZ1ONE I documenti che si possono creare con la stampa unione sono: lettere, messaggi di posta elettronica, o etichette.

3.5.1 PREPARAZ1ONE I documenti che si possono creare con la stampa unione sono: lettere, messaggi di posta elettronica, o etichette. 3.5 STAMPA UNIONE Le funzioni della stampa unione (o stampa in serie) permettono di collegare un documento principale con un elenco di nominativi e indirizzi, creando così tanti esemplari uguali nel contenuto,

Dettagli

Basi di Dati. Programmazione e gestione di sistemi telematici

Basi di Dati. Programmazione e gestione di sistemi telematici Basi di Dati. Programmazione e gestione di sistemi telematici Coordinatore: Prof. Paolo Nesi Docenti: Prof. Paolo Nesi Dr.sa Michela Paolucci Dr. Emanuele Bellini SQL SQL = Structured Query Language Linguaggio

Dettagli

Introduzione al linguaggio SQL

Introduzione al linguaggio SQL Introduzione al linguaggio SQL Structured Query Language (Linguaggio Strutturato di Interrogazione di Database) prof. Cleto Azzani IPSIA MORETTO BRESCIA (2004) Che cos è un Data Base (Base di dati) Insieme

Dettagli

Gestione delle tabelle

Gestione delle tabelle Linguaggio SQL: fondamenti Creazione di una tabella Modifica della struttura di una tabella Cancellazione di una tabella Dizionario dei dati Integrità dei dati 2 Creazione di una tabella (1/3) Si utilizza

Dettagli

Vincoli di Integrità

Vincoli di Integrità Vincoli di Integrità Antonella Poggi Dipartimento di informatica e Sistemistica Sapienza Università di Roma Progetto di Applicazioni Software Anno accademico 2010-2011 Questi lucidi sono stati prodotti

Dettagli

Laboratorio di Basi di Dati Introduzione a SQL

Laboratorio di Basi di Dati Introduzione a SQL Laboratorio di Basi di Dati Introduzione a SQL Pierluigi Pierini Technolabs S.p.a. Pierluigi.Pierini@technolabs.it evoluzione e standards 1970 - E.F. Codd, A Relational Model of Data for Large Shared Data

Dettagli

Cap. 1-I 1 I sistemi informatici

Cap. 1-I 1 I sistemi informatici Libro di testo A. Chianese,V. Moscato, A. Picariello, L. Sansone Basi di dati per la gestione dell informazione McGraw-Hill Hill,, 2007 Ricevimento studenti Lunedì ore 11-13 Didattica su web Si interagisce

Dettagli

Modello Relazionale. Sistemi di Elaborazione delle Informazioni. DB ed SQL. Modello relazionale: concetti di base

Modello Relazionale. Sistemi di Elaborazione delle Informazioni. DB ed SQL. Modello relazionale: concetti di base Sistemi di Elaborazione delle Informazioni DB ed SQL Prof. Silvio Vassallo Modello Relazionale Il modello relazionale si basa sul concetto di RELAZIONE tra insiemi di oggetti. Dati n insiemi A 1,A 2, A

Dettagli

Laboratorio Progettazione Web PHP e MySQL - Lezione 9. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2012/2013

Laboratorio Progettazione Web PHP e MySQL - Lezione 9. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2012/2013 Laboratorio Progettazione Web PHP e MySQL - Lezione 9 Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2012/2013 Architettura di una applicazione Web Browser Web HTTP Server Web API Dati Presentation

Dettagli

Linguaggio SQL. Structured Query Language

Linguaggio SQL. Structured Query Language Linguaggio SQL Structured Query Language Creato negli anni 70 presso IBM Inizialmente solo linguaggio di interrogazione Ora linguaggio di riferimento per DB relazionali Standardizzato grazie al lavoro

Dettagli

Creazione manuale delle tabelle (mediante scrittura del codice SQL corrispondente)

Creazione manuale delle tabelle (mediante scrittura del codice SQL corrispondente) Università degli Studi di Modena e Reggio Emilia Facoltà di Scienze della Comunicazione e dell Economia Corso di Laurea in Comunicazione e Marketing Anno Accademico 2005/06 Metodi per la Gestione dei Dati

Dettagli

MySQL Command Line Client: operazioni fondamentali

MySQL Command Line Client: operazioni fondamentali MySQL Command Line Client: operazioni fondamentali INTRODUZIONE Il RDBMS MySQL, oltre a fornire un applicazione che abbia un interfaccia user-friendly, ha a disposizione anche un altro client, che svolge

Dettagli

Archivi e Basi di Dati

Archivi e Basi di Dati Archivi e Basi di Dati A B C File Programma 1 Programma 2 A B C File modificati Programma 1 DBMS DB Programma 2 Informatica Generale (CdL in E&C), A.A. 2000-2001 55 Problemi nella gestione di archivi separati

Dettagli

Lavorare con MySQL Parte Prima.

Lavorare con MySQL Parte Prima. Lavorare con MySQL Parte Prima. Data la particolarità dell argomento, ho deciso di dividerlo in due lezioni. Nella prima, si parlerà diffusamente di MySQL, cos è un DBMS, cos è l SQL, i campi supportati

Dettagli

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

Insegnamento di Informatica CdS Scienze Giuridiche A.A. 2006/7. Il trattamento dei dati Insegnamento di Informatica CdS Scienze Giuridiche A.A. 2006/7 Il trattamento dei dati database: il linguaggio SQL seconda parte Prof. Valle D.ssa Folgieri Lez9 15.11.06 Trattamento dati. Database: il

Dettagli

SQL: Concetti Base -Prima Parte-

SQL: Concetti Base -Prima Parte- SQL: Concetti Base -Prima Parte- Atzeni, Ceri, Paraboschi, Torlone Basi Di Dati: Modelli e Linguaggi di Interrogazione, McGraw-Hill Italia Capitolo 4 SQL Structured Query Language Contiene: DDL (Data Definition

Dettagli

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

Ministero della Pubblica Istruzione Ufficio Scolastico Regionale per la Sicilia Direzione Generale Unione Europea Regione Sicilia Ministero della Pubblica Istruzione Ufficio Scolastico Regionale per la Sicilia Direzione Generale ISTITUTO TECNICO INDUSTRIALE STATALE G. MARCONI EDILIZIA ELETTRONICA e

Dettagli

Laboratorio di Basi di Dati

Laboratorio di Basi di Dati Laboratorio di Basi di Dati Docente: Alberto Belussi Lezione 1 SQL SQL (Structured Query Language) è stato definito nel 1973 ed è oggi il linguaggio più diffuso per i DBMS relazionali. Sono stati proposti

Dettagli

SQL Server 2008. Architettura Client-Server. SQL Server 2008. Introduzione all uso di SQL Server 2008. Dutto Riccardo. http://dbdmg.polito.

SQL Server 2008. Architettura Client-Server. SQL Server 2008. Introduzione all uso di SQL Server 2008. Dutto Riccardo. http://dbdmg.polito. SQL Server 2008 Introduzione all uso di SQL Server 2008 Dutto Riccardo http://dbdmg.polito.it SQL Server 2008 Gestione dei server OLAP e OLTP Gestione Utenti Creazione e gestione DB SQL Server Business

Dettagli

User Tools: DataBase Manager

User Tools: DataBase Manager Spazio di lavoro Per usare T-SQL Assistant selezionare il link Simple Query e spostare a piacere la piccola finestra dove un menu a tendina mostra i diversi comandi SQL selezionabili, il pulsante Preview

Dettagli

Basi di Dati prof. Letizia Tanca lucidi ispirati al libro Atzeni-Ceri-Paraboschi-Torlone. SQL: il DDL

Basi di Dati prof. Letizia Tanca lucidi ispirati al libro Atzeni-Ceri-Paraboschi-Torlone. SQL: il DDL Basi di Dati prof. Letizia Tanca lucidi ispirati al libro Atzeni-Ceri-Paraboschi-Torlone SQL: il DDL Parti del linguaggio SQL Definizione di basi di dati (Data Definition Language DDL) Linguaggio per modificare

Dettagli

L interfaccia a riga di comando di MySql

L interfaccia a riga di comando di MySql L interfaccia a riga di comando di MySql Una volta completata la procedura di installazione possiamo finalmente testare le funzionalità di MySQL. Sia che ci si trovi in ambiente Linux che Windows, l'interfaccia

Dettagli

Lezione del modulo 7 SQL e database del giorno 04/05/2006 tot. ore 3. Lo Standard SQL

Lezione del modulo 7 SQL e database del giorno 04/05/2006 tot. ore 3. Lo Standard SQL Lezione del modulo 7 SQL e database del giorno 04/05/2006 tot. ore 3 Lo Standard SQL Il linguaggio SQL è un linguaggio non procedurale (o di tipo dichiarativo), divenuto, ormai da tempo, il linguaggio

Dettagli

1. Schema concettuale della base di dati Lo schema concettuale (o statico) è uno dei due schemi del progetto concettuale di un sistema informativo.

1. Schema concettuale della base di dati Lo schema concettuale (o statico) è uno dei due schemi del progetto concettuale di un sistema informativo. Esame di Stato Istituto Tecnico Industriale Proposta di soluzione della seconda prova Indirizzo: INFORMATICA Tema: INFORMATICA Anno Scolastico: 2003-2004 1. Schema concettuale della base di dati Lo schema

Dettagli

Informatica Generale Andrea Corradini. 19 - Sistemi di Gestione delle Basi di Dati

Informatica Generale Andrea Corradini. 19 - Sistemi di Gestione delle Basi di Dati Informatica Generale Andrea Corradini 19 - Sistemi di Gestione delle Basi di Dati Sommario Concetti base di Basi di Dati Il modello relazionale Relazioni e operazioni su relazioni Il linguaggio SQL Integrità

Dettagli

INFORMATICA PER L IMPRESA (Docente Prof. Alfredo Garro) ESERCIZIO 3

INFORMATICA PER L IMPRESA (Docente Prof. Alfredo Garro) ESERCIZIO 3 INFORMATICA PER L IMPRESA (Docente Prof. Alfredo Garro) ESERCIZIO 3 L azienda Plastic S.p.A, operante nel settore materie plastiche, ha deciso di dotarsi di un Sistema Informativo per la gestione del suo

Dettagli

MAX, SUM, AVG, COUNT)

MAX, SUM, AVG, COUNT) INTRODUZIONE A SQL Definizione di tabelle e domini Alcuni vincoli di integrità Struttura base SELECT FROM WHERE Funzioni di aggregazione (MIN, MAX, SUM, AVG, COUNT) Query da più tabelle (FROM R1, Rk) Join

Dettagli

ISTITUTO DI ISTRUZIONE SUPERIORE Cigna Baruffi Garelli

ISTITUTO DI ISTRUZIONE SUPERIORE Cigna Baruffi Garelli Attività svolta 1. UNITÀ DI APPRENDIMENTO 1: RIPASSO E APPROFONDIMENTO DEGLI ARGOMENTI PRECEDENTI 1.1. Concetti elementari di informatica Algoritmo, Dato, Informazione Campi di applicazione e classificazione

Dettagli

Introduzione. Elenco telefonico Conti correnti Catalogo libri di una biblioteca Orario dei treni aerei

Introduzione. Elenco telefonico Conti correnti Catalogo libri di una biblioteca Orario dei treni aerei Introduzione Elenco telefonico Conti correnti Catalogo libri di una biblioteca Orario dei treni aerei. ESEMPI DI INSIEMI DI DATI DA ORGANIZZARE ED USARE IN MANIERA EFFICIENTE Introduzione Più utenti con

Dettagli

Il linguaggio SQL. Massimo Paolucci (paolucci@dist.unige.it) DIST Università di Genova. SQL: Structured Query Language

Il linguaggio SQL. Massimo Paolucci (paolucci@dist.unige.it) DIST Università di Genova. SQL: Structured Query Language 1 Il linguaggio SQL Massimo Paolucci (paolucci@dist.unige.it) DIST Università di Genova SQL: Structured Query Language 2 Generalita Linguaggio di interrogazione per le basi di dati. Sviluppato presso i

Dettagli

Informatica per le discipline umanistiche 2 lezione 10

Informatica per le discipline umanistiche 2 lezione 10 Informatica per le discipline umanistiche 2 lezione 10 Parte III: il computer come strumento per l interazione e la comunicazione Si è parlato di identità Parte III: il computer come strumento per l interazione

Dettagli

SQL PER LA DEFINIZIONE DI BASI DI DATI

SQL PER LA DEFINIZIONE DI BASI DI DATI SQL PER LA DEFINIZIONE DI BASI DI DATI SQL non è solo un linguaggio di interrogazione (Query Language), ma Un linguaggio per la definizione di basi di dati (Data-definition language (DDL)) CREATE SCHEMA

Dettagli

http://technet.microsoft.com/it-it/library/bb500469.aspx Le versioni di SQL Server sono state molte; traggo le principali da Wikipedia:

http://technet.microsoft.com/it-it/library/bb500469.aspx Le versioni di SQL Server sono state molte; traggo le principali da Wikipedia: LEZIONE-TSQL-01 DDL (VER01 PAG. 1 / 11 LEZIONE-TSQL-01 DDL (VER01 T-SQL PROGRAMMAZIONE PARTE PRIMA MICROSOFT SQL SERVER IL PRODOTTO MICROSOFT SQL SERVER Le dispense SQL descrivono un generico SQL utilizzato

Dettagli

SQL non è solo un linguaggio di interrogazione (Query Language), ma. Un linguaggio per la definizione di basi di dati (Data-definition language (DDL))

SQL non è solo un linguaggio di interrogazione (Query Language), ma. Un linguaggio per la definizione di basi di dati (Data-definition language (DDL)) SQL PER LA DEFINIZIONE DI BASI DI DATI 1 SQL non è solo un linguaggio di interrogazione (Query Language), ma Un linguaggio per la definizione di basi di dati (Data-definition language (DDL)) CREATE SCHEMA

Dettagli

Basi di Dati: Corso di laboratorio

Basi di Dati: Corso di laboratorio Basi di Dati: Corso di laboratorio Lezione 1 Raffaella Gentilini 1 / 67 Sommario 1 Introduzine al Linguaggio SQL Concetti Preliminari 2 3 2 / 67 Concetti Preliminari Il linguaggio SQL SQL Acronimo per

Dettagli

Sistemi Informativi Aziendali II

Sistemi Informativi Aziendali II Modulo 2 Sistemi Informativi Aziendali II 1 Corso Sistemi Informativi Aziendali II - Modulo 2 Modulo 2 La gestione delle informazioni strutturate nell impresa: La progettazione di un Data Base; Le informazioni

Dettagli

Laboratorio di Basi di Dati e Web

Laboratorio di Basi di Dati e Web Laboratorio di Basi di Dati e Web Docente: Alberto Belussi Lezione 1 SQL Structured Query Language SQL è stato definito nel 1973 ed è oggi il linguaggio più diffuso per i DBMS relazionali Il linguaggio

Dettagli