Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
UdA Database Progettazione Fisica GIORGIO PORCU www.thegiorgio.it © 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 1A Database Progettazione Fisica Sommario Progettazione Fisica Database e Tabella DBMS DBMS, Funzioni e Linguaggi DBMS: interfaccia grafica DBMS: linguaggio SQL DBMS e SQL © 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 • • • • • • • 2 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 Progettazione Fisica Database Progettazione Fisica Database © 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 • Database Insieme costituito da: Schema (Tabelle in relazione tra loro) Dati inseriti (Record) identificato da un Nome Scuola C1 = C2 C1 C3 C2 C1 C3 C2 327150 Rossi C4 Mario C4 C3 C4 + Anna Milano Bianchi 03/04/1971 4 Database Progettazione Fisica Tabella © 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 • Tabella Struttura contenente: Colonne o Campi Righe o Record identificata da un Nome Persona CodiceFiscale Cognome Nome Città RSSMRO97D11C441R Rossi Mario Roma RSSMRO98Y17C332L Rossi Mario Milano BNCLRA96A61B333C Bianchi Laura Firenze 5 Database Progettazione Fisica • 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 DBMS Database Progettazione Fisica DBMS, Funzioni e Linguaggi © 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 • 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 Database © 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 Progettazione Fisica DBMS: Interfaccia grafica 8 Database Progettazione Fisica Access: Creare un Database • Creare un Database vuoto in MS Access 2000-2003 © 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 Seleziona File > Nuovo > Database vuoto… Salva il database con un Nome 9 Database Progettazione Fisica • Creare una Tabella in MS Access 2000-2003 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 Access: Creare una Tabella Database © 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 Progettazione Fisica DBMS: Linguaggio SQL 11 Database Progettazione Fisica • 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 DBMS e SQL Database Progettazione Fisica Comandi SQL © 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 • 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 Database Progettazione Fisica • Creare una Tabella in MS Access 2000-2003 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 SQL DDL: Creare una Tabella 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], a … nomecampoN tipodidatoN [not null] [ primary key(nomecampoPK1, …)] ) b Chiave primaria Le sintassi a e b sono equivalenti. La b è obbligatoria solo se la chiave primaria è costituita da più di un campo. 15 © 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 SQL DDL: create table (PK) Database Progettazione Fisica Esempio 1 SQL DDL: create table Persona Cognome Nome © 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 IDPersona create table Persona ( IDPersona counter, Cognome char(30), Nome char(30), primary key(IDPersona) ) 16 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], a … Chiave b nomecampoN tipodidatoN [not null] primaria [ primary key(nomecampoPK1)] [foreign key(nomecampoFK1) references Chiave nomealtratabella(nomePK)] ); esterna © 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 SQL DDL: create table (PK + FK) Database Progettazione Fisica Esempio 2 SQL DDL: create table Persona Cognome Nome IDCittà IDCittà Denominazione © 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 IDPersona Città create table Persona create table Città ( ( IDPersona counter, IDCittà counter, Cognome char(30), Denominazione char(30), Nome char(30), primary key(IDCittà) IDCittà int, ) 1 primary key(IDPersona), foreign key(IDCittà) references Città(IDCittà) ) 2 18