La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

CORSI DI FORMAZIONE - Basi di Dati: MySql - Parte 1 - Novembre 2005 1 BASI DI DATI - MySql Docente:Mario Di Ture Centro di Ateneo per i Servizi Informatici.

Presentazioni simili


Presentazione sul tema: "CORSI DI FORMAZIONE - Basi di Dati: MySql - Parte 1 - Novembre 2005 1 BASI DI DATI - MySql Docente:Mario Di Ture Centro di Ateneo per i Servizi Informatici."— Transcript della presentazione:

1 CORSI DI FORMAZIONE - Basi di Dati: MySql - Parte 1 - Novembre BASI DI DATI - MySql Docente:Mario Di Ture Centro di Ateneo per i Servizi Informatici Università degli Studi di Cassino

2 CORSI DI FORMAZIONE - Basi di Dati: MySql - Parte 1 - Novembre Prodotti di riferimento MySQL Server MySQL Query Browser PHP phpMyAdmin In questo corso utilizzeremo i seguenti prodotti in ambiente Windows:

3 CORSI DI FORMAZIONE - Basi di Dati: MySql - Parte 1 - Novembre Cosè un database Un database è un insieme di informazioni correlate a un oggetto o a uno scopo particolare. In un database i dati sono memorizzati in tabelle, costituite da righe e colonne MySql è un RDBMS (Relational DataBase Management System) che gestisce tutte le informazioni in più file di database, all'interno dei quali sono disponibili diversi oggetti utili a tale scopo: tabelle, indici ecc.

4 CORSI DI FORMAZIONE - Basi di Dati: MySql - Parte 1 - Novembre E il modello organizzativo dei database più diffuso. In base a tale modello: Un database è un insieme di tabelle in relazione tra loro Ciascuna tabella è un insieme di tuple (anche righe o records) Ciascuna tupla (riga) è una sequenza di attributi (anche colonne o campi) Lattributo (colonna) è lunità elementare di informazione, contraddistinto dal dominio, cioè dallinsieme predefinito di valori che può assumere Il modello relazionale - 1

5 CORSI DI FORMAZIONE - Basi di Dati: MySql - Parte 1 - Novembre Il modello relazionale - 2 Esemplificando, vediamo le caratteristiche definite nella diapositiva precedente in riferimento alla relazione (tabella) film disponibili in una videoteca: Film Tupla (riga,record) Attributo (colonna, campo) Il Dominio è costituito dai valori che supporto può assumere, cioè DVD e cassetta (VHS) CodiceTitoloRegistaAttore protagonista Anno di produzione SupportoPrestito… 1Roma città aperta Roberto Rossellini Anna Magnani1945DVDRossi P.… 2Jurassic Park Steven Spielberg Sam Neill1993Cassetta (VHS) Verdi G.… …………………

6 CORSI DI FORMAZIONE - Basi di Dati: MySql - Parte 1 - Novembre Tabella Excel e tabella MySql Una tabella è costituita da righe e colonne, come in un foglio elettronico. Molte volte le righe vengono chiamate record, le colonne campi. In questo foglio abbiamo una riga per ogni attore ed una colonna per gli attributi associati.

7 CORSI DI FORMAZIONE - Basi di Dati: MySql - Parte 1 - Novembre La valutazione delle esigenze degli utenti La raccolta della modulistica in uso Progettazione di un database 1 – Definiamo lo scopo e le modalità di utilizzo del database tramite: 2 – Ogni tabella contiene informazioni relative ad uno stesso argomento. Procediamo, quindi, alla definizione delle tabelle necessarie e alle colonne da cui sono formate 3 – Individuiamo, tra le colonne di ogni tabella, quale contiene un dato univoco sempre valorizzato per ogni riga, ad es. il codice in una tabella attori, questa colonna viene detta chiave primaria 4 – Impostiamo le relazioni tra le varie tabelle, basandoci sulla chiave primaria come sopra definita

8 CORSI DI FORMAZIONE - Basi di Dati: MySql - Parte 1 - Novembre Il linguaggio SQL Il linguaggio SQL (Structured Query Language) viene usato per definire le tabelle, per vederne e manipolarne i dati contenuti. Le istruzioni SQL possono essere costruite manualmente o col supporto degli strumenti visuali.

9 CORSI DI FORMAZIONE - Basi di Dati: MySql - Parte 1 - Novembre Un semplice database per archiviare i film presenti in una videoteca codicetitolocodice regista anno… 1Roma città …11945… 2Jurassic Park21993… …………… Per costruire il database abbiamo bisogno di almeno tre tabelle: Film – Registi - Attori. Nella tabella Film inseriremo il titolo e altri dati, mentre la tabella Registi potrebbe sembrare superflua ma, a seguito di un processo detto di normalizzazione, questa viene derivata come segue: codicetitoloregistaanno… 1Roma città aperta R. Rossellini1945… 2Jurassic ParkS. Spielberg1993… …...……… FILM (originaria) FILM (dopo la normalizzazione) codice_registanome 1Roberto Rossellini 2Steven Spielberg REGISTI (nuova tabella)

10 CORSI DI FORMAZIONE - Basi di Dati: MySql - Parte 1 - Novembre Perché normalizzare ? I motivi sono diversi, quelli principali sono: Ripetizione di dati Non normalizzando, devo inserire nome e cognome completi del regista per ogni film diretto (con la possibilità di commettere errori di digitazione), al posto di inserire il solo codice; non aumenterei la quantità di dati significativi e, in conclusione, occuperei anche più memoria. Anomalie di aggiornamento Se devo correggere il nome di un regista, posso cambiare il dato su una sola riga nella tabella registi, anziché su tutte le righe della tabella film (se non la normalizzo) dove il regista compare.

11 CORSI DI FORMAZIONE - Basi di Dati: MySql - Parte 1 - Novembre Le prime tre forme normali NF = Normal Form (Definizioni) 1NF Uno schema è in 1NF se e solo se ogni attributo ha un valore atomico, non ulteriormente scomponibile. 2NF Uno schema è in 2NF se e solo se ogni attributo non chiave primaria dipende completamente dalla chiave primaria. 3NF Uno schema T è in 3NF se e solo se ogni attributo non chiave primaria non dipende transitivamente dalla chiave.

12 CORSI DI FORMAZIONE - Basi di Dati: MySql - Parte 1 - Novembre Le proprietà ACID Una transazione è insieme di operazioni elementari sui dati per lesecuzione di una determinata funzione. Le proprietà ACID delle transazioni di un RDBMS consentono una condivisione sicura dei dati e sono: Atomicità: o vengono eseguite tutte le operazioni elementari o nessuna Consistenza: una transazione viene avviata e deve terminare con uno stato dei dati consistente, cioè che non viola le regole di integrità dei dati Isolamento: gli effetti di più transazioni simultanee non sono visibili a ciascuna singola transazione, e divengono manifesti solo dopo che una transazione si è conclusa con successo Durabilità: (o persistenza) una volta che una transazione è stata eseguita con successo gli effetti sono permanenti

13 CORSI DI FORMAZIONE - Basi di Dati: MySql - Parte 1 - Novembre Il prompt dei comandi di MySql (shell) MySQL è un sistema client-server. Il server gestisce i dati tramite comandi SQL, per potersi collegare al server e impartire ad esso dei comandi, è necessario un programma client. Il più utilizzato è il prompt dei comandi di MySQL, inoltre funziona sostanzialmente allo stesso modo su tutte le piattaforme (Linux, Windows, Unix …). RDBMS MySql Server Numero di film archiviati ? MySql Client

14 CORSI DI FORMAZIONE - Basi di Dati: MySql - Parte 1 - Novembre Avvio e chiusura di MySql (I) Dopo aver installato il server MySql per Windows, esaminiamo i comandi per avviare ed arrestare il relativo processo. In genere a fine installazione il server viene avviato automaticamente. I comandi per la gestione del server variano a seconda del tipo di installazione. Se MySql è stato installato come servizio di Windows (raccomandato), i comandi sono i seguenti (oltre alla esecuzione dal pannello dei Servizi di Windows): Arresto: C:\>NET STOP MySQL Avvio: C:\>NET START MySQL Il comando NET si trova nella cartella di sistema system32

15 CORSI DI FORMAZIONE - Basi di Dati: MySql - Parte 1 - Novembre Avvio e chiusura di MySql (II) Se MySql è stato installato per una gestione da riga di comando (non come servizio), i comandi sono i seguenti: Arresto: mysqladmin -u root -p shutdown Avvio: mysqld-nt --defaults-file= "C:\Programmi\MySQL\MySQL Server 4.1\my.ini" Dove: -u: è lopzione per specificare il nome dellutente (in questo caso root, cioè lamministratore); -p: è lopzione che permette linserimento della password; --defaults-file: permette di specificare il percorso del file di configurazione del database.

16 CORSI DI FORMAZIONE - Basi di Dati: MySql - Parte 1 - Novembre Il prompt dei comandi di MySql Il prompt dei comandi può essere lanciato in due modi. 1 - Attraverso il menu dei Programmi di Windows: START > Tutti i programmi > MySQL Server 4 > MySQL Command Line Client 2 - Attraverso il prompt dei comandi di Windows: START > Tutti i programmi > Accessori > Prompt dei comandi ed eseguendo i due comandi: cd C:\Programmi\MySQL\MySQL Server 4.1\bin mysql -u root -p -h pc_docente (-h per indicare il nome del sever)

17 CORSI DI FORMAZIONE - Basi di Dati: MySql - Parte 1 - Novembre Test di MySql E possibile testare se il server è attivo eseguendo alcuni comandi (che terminano con ;) dal prompt di MySQL: mysql> SHOW DATABASES; (Invio) mostra i database creati mysql> USE MYSQL; (Invio) seleziona il database di default mysql> SHOW TABLES; (Invio) mostra le tabelle del database di default mysql> SHOW PROCESSLIST ; (Invio) mostra la lista degli utenti collegati


Scaricare ppt "CORSI DI FORMAZIONE - Basi di Dati: MySql - Parte 1 - Novembre 2005 1 BASI DI DATI - MySql Docente:Mario Di Ture Centro di Ateneo per i Servizi Informatici."

Presentazioni simili


Annunci Google