© 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 UdA 1A Database Progettazione Fisica G IORGIO P ORCU
© 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 Database Progettazione Fisica Sommario Database e Tabella DBMS DBMS, Funzioni e Linguaggi DBMS: interfaccia grafica DBMS: linguaggio SQL DBMS e SQL 2
© 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 Database Progettazione Fisica Consiste nel realizzare fisicamente il database progettato con Schema Logico Relazionale, utilizzando un software DBMS su computer. Il database utilizza come concetti fondamentali: Tabella Chiave Primaria (PK, Primary Key) Chiave Esterna (FK, Foreign Key) Record Integrità referenziale 3
© 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 Database Progettazione Fisica Database Database Insieme costituito da: Schema (Tabelle in relazione tra loro) Dati inseriti (Record) identificato da un Nome Scuola = + Rossi Mario Anna Bianchi Milano 03/04/
© 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 Database Progettazione Fisica Tabella Tabella Struttura contenente: Colonne o Campi Righe o Record identificata da un Nome CodiceFiscaleCognomeNomeCittà RSSMRO97D11C441RRossiMarioRoma RSSMRO98Y17C332LRossiMarioMilano BNCLRA96A61B333CBianchiLauraFirenze Persona 5
© 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 Database Progettazione Fisica DBMS DBMS Acronimo di DataBase Management System. Software per la gestione dei Database. Può eseguire una serie di funzioni o operazioni di gestione. I più diffusi DBMS sono: Microsoft Access (Uso personale, a pagamento) MySQL (Uso personale, Web, gratuito) Oracle (Uso aziendale/commerciale, a pagamento) tutti e tre di tipo relazionale (RDBMS). 6
© 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 Database Progettazione Fisica DBMS, Funzioni e Linguaggi Funzioni tipiche dei DBMS Creazione Schema e Dati Modifica Schema e Dati Cancellazione Schema e Dati Inserimento Dati Interrogazione Dati Impostazione criteri di accesso e sicurezza L’utente del DBMS può utilizzare tali funzioni: Con interfaccia grafica Utilizzando un linguaggio detto SQL 7
© 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 Database Progettazione Fisica DBMS: Interfaccia grafica 8
© 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 Database Progettazione Fisica Access: Creare un Database Creare un Database vuoto in MS Access Seleziona File > Nuovo > Database vuoto… Salva il database con un Nome 9
© 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 Database Progettazione Fisica Access: Creare una Tabella Creare una Tabella in MS Access con procedura grafica Apri la Finestra Database Seleziona Tabelle > Crea una tabella in visualizzazione Struttura Inserisci riga per riga i nomi dei Campi e i relativi Tipi di Dato Imposta la Chiave Primaria Salva la tabella con un Nome 10
© 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 Database Progettazione Fisica DBMS: Linguaggio SQL 11
© 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 Database Progettazione Fisica DBMS e SQL SQL Acronimo di Structured Query Language. Linguaggio standard utilizzato dai RDBMS per gestire i database. Prevede tre principali tipologie di comandi: DDL: Data Definition Language DML: Data Manipulation Language QL: Query Language L’esecuzione di un generico comando in SQL è detta (in maniera un po’ impropria) Query 12
© 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 Database Progettazione Fisica Comandi SQL DDL (Data Definition Language) Consentono di creare e modificare la struttura (Tabelle e Relazioni) del DB DML (Data Manipulation Language) Gestiscono inserimento e modifica dei dati nella struttura del DB QL (Query Language) Permettono di eseguire interrogazioni sui dati 13
© 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 Database Progettazione Fisica SQL DDL: Creare una Tabella Creare una Tabella in MS Access in linguaggio SQL Apri la Finestra Database Seleziona Query > Crea una Query in visualizzazione Struttura Passa a Visualizzazione SQL Inserisci la Query in SQL utilizzando il comando create table Salva la Query con un Nome Esegui la Query 14
© 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 Database Progettazione Fisica Crea una nuova tabella con N campi senza chiavi esterne: create table nometabella ( nomecampo1 tipodidato1 [ not null ] [ primary key ], nomecampo2 tipodidato2 [ not null ], … nomecampoN tipodidatoN [ not null ] [ primary key ( nomecampoPK1, … ) ] ) Chiave primaria ab Le sintassi a e b sono equivalenti. b La b è obbligatoria solo se la chiave primaria è costituita da più di un campo. a b SQL DDL: create table (PK) 15
© 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 Database Progettazione Fisica create table Persona ( IDPersona counter, Cognome char(30), Nome char(30), primary key(IDPersona) ) 16 Esempio 1 SQL DDL: create table IDPersonaCognomeNome Persona
© 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 Database Progettazione Fisica Crea una nuova tabella con N campi e una o più chiavi esterne: create table nometabella ( nomecampo1 tipodidato1 [ not null ] [ primary key ], nomecampo2 tipodidato2 [ not null ], … nomecampoN tipodidatoN [ not null ] [ primary key ( nomecampoPK1 ) ] [ foreign key( nomecampoFK1 ) references nomealtratabella(nomePK) ] ); Chiave primaria Chiave esterna a b SQL DDL: create table (PK + FK)
© 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 Database Progettazione Fisica create table Persona ( IDPersona counter, Cognome char(30), Nome char(30), IDCittà int, primary key(IDPersona), foreign key(IDCittà) references Città(IDCittà) ) 18 Esempio 2 SQL DDL: create table IDPersonaCognomeNomeIDCittà Persona IDCittàDenominazione Città create table Città ( IDCittà counter, Denominazione char(30), primary key(IDCittà) ) 1 2