Le Basi di Dati. Le Basi di Dati



Documenti analoghi
Il database management system Access

DATABASE. A cura di Massimiliano Buschi

DATABASE.

Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci

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

UN PROGRAMMA APPLICATIVO: ACCESS Access è un programma del pacchetto Office che permette di realizzare database

Introduzione ai database relazionali

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

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

Organizzazione delle informazioni: Database

Facoltà di Farmacia - Corso di Informatica

Corso di Access. Prerequisiti. Modulo L2A (Access) 1.1 Concetti di base. Utilizzo elementare del computer Concetti fondamentali di basi di dati

Basi di dati. Corso di Laurea in Ingegneria Informatica Canale di Ingegneria delle Reti e dei Sistemi Informatici - Polo di Rieti

DBMS (Data Base Management System)

Abilità Informatiche A.A. 2010/2011 Lezione 9: Query Maschere Report. Facoltà di Lingue e Letterature Straniere

Basi di dati. Concetti Introduttivi ESEMPIO. Fisica, Analisi, Informatica. Entità Relazioni Interrogazioni. Database 2

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

BASI DI DATI - : I modelli di database

Capitolo 13. Interrogare una base di dati

Informatica per le discipline umanistiche 2 lezione 10

Database. Appunti di Amaranto Oronzo e Giancane Diego Lezione dell Ing. Lucia Vaira 24/04/2014

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

I Sistemi Informativi

Organizzazione degli archivi

Basi di dati. Concetti introduttivi ESEMPIO. INSEGNAMENTI Fisica, Analisi, Aule. Docenti. Entità Relazioni Interrogazioni. Ultima modifica: 26/02/2007

Sistemi Informativi e Basi di Dati

DATABASE RELAZIONALI

Corso di Informatica (Basi di Dati)

IL SISTEMA INFORMATIVO

Basi di Dati e Microsoft Access

Database. Si ringrazia Marco Bertini per le slides

Database. Francesco Tapparo Informatica e Bioinformatica /16

I database relazionali (Access)

Progettazione di un Database

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

Introduzione ai Sistemi di Gestione di Basi di Dati XML

Base Dati Introduzione

Dispensa di database Access

Introduzione al data base

Sistemi per la gestione di database: MySQL ( )

Informatica (Basi di Dati)

Progettazione di Basi di Dati

Data Base. Prof. Filippo TROTTA

TEORIA sulle BASI DI DATI

Esercitazione di Basi di Dati

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

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

Corso di Informatica RDBMS RDBMS. Corso di Laurea in Conservazione e Restauro dei Beni Culturali

Progettazione di Database. Un Esempio

I database. Cosa sono e a cosa servono i Database

7. Microsoft Access. 1) Introduzione a Microsoft Access

MODULO 5 DATA BASE PROGRAMMA. Progettazione rapida introduzione alla progettazione di DB

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

Informatica I per la. Fisica

RDBMS. Corso di Informatica RDBMS. Access. Corso di Laurea in Conservazione e Restauro dei Beni Culturali

Università degli Studi di L Aquila. Facoltà di Ingegneria. Corso di Laurea in Ingegneria Elettronica Corso di Sistemi Informativi

Basi di dati. Il Modello Relazionale dei Dati. K. Donno - Il Modello Relazionale dei Dati

ARCHIVI E DATABASE (prof. Ivaldi Giuliano)

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

Elena Baralis 2013 Politecnico di Torino 1

BASE DI DATI: introduzione. Informatica 5BSA Febbraio 2015

Basi di dati. (Sistemi Informativi) teoria e pratica con Microsoft Access. Basi di dati. Basi di dati. Basi di dati e DBMS DBMS DBMS

MODELLO RELAZIONALE. Introduzione

DATABASE. Progettare una base di dati. Database fisico e database logico

Basi di dati. Basi di dati = database. Basi di dati

Informatica Generale Andrea Corradini Sistemi di Gestione delle Basi di Dati

Utilizzando Microsoft Access. Si crea la tabella Anagrafica degli alunni,le Materie e i voti si mettono alcuni campi

disponibili nel pacchetto software.

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

Cultura Tecnologica di Progetto

BASE DI DATI: sicurezza. Informatica febbraio ASA

Database 1 biblioteca universitaria. Testo del quesito

Base di dati e sistemi informativi

Alessandra Raffaetà. Basi di Dati

Appunti sulle basi di dati. Cos è una base base di dati? Introduzione. D. Gubiani. 19 Luglio 2005

Sistemi centralizzati e distribuiti

1. BASI DI DATI: GENERALITÀ

MODULO 5 Appunti ACCESS - Basi di dati

Database 3 affitto veicoli. Testo del quesito

Database: collezione di fatti, registrabili e con un ben preciso significato, relazionati fra di loro

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

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

INFORMATICA PER LE APPLICAZIONI ECONOMICHE PROF.SSA BICE CAVALLO

Modello Relazionale dei DBMS - Vincoli Tradizionalmente, esistono quattro modelli logici: Gerarchico Reticolare Relazionale A oggetti XML I modelli

Progettaz. e sviluppo Data Base

5.3 TABELLE RECORD Inserire, eliminare record in una tabella Aggiungere record Eliminare record

Le query. Lezione 6 a cura di Maria Novella Mosciatti

Esercizio data base "Biblioteca"

ECDL - Database. European Computer Driving Licence - Modulo 5 - Database LEZIONE 2

Introduzione alla teoria dei database relazionali. Come progettare un database

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

La base di dati (database)

MANUALE MOODLE STUDENTI. Accesso al Materiale Didattico

Archivi e Basi di Dati

Transcript:

Le Basi di Dati 20/05/02 Prof. Carlo Blundo 1 Le Basi di Dati Le Base di Dati (database) sono un insieme di tabelle di dati strutturate in maniera da favorire la ricerca di informazioni specializzate per gestire grandi quantità di dati Risponde a domande complesse Es. l elenco di tutti le studentesse che sono iscritte al II anno, hanno una media superiore a 26 ed hanno meno di 21 anni. DBMS (DataBase Management System): Programma utilizzato per creare, gestire e consultare una base di dati. Microsoft Access, Oracle, MySQL 20/05/02 Prof. Carlo Blundo 2 1

Esempi di Basi di Dati Agenda Telefonica Archivio Clienti di una Videoteca Archivio Libri di una Biblioteca Archivio Dipendenti di un Ente Sistemi Transazionali: Sistemi Informatici che fanno uso di un DBMS. Ad esempio, gestione di prenotazioni di voli. 20/05/02 Prof. Carlo Blundo 3 Caratteristiche di un Sistema Transazionale Tanti utenti condividono le stesse informazioni Più utenti accedono contemporaneamente agli stessi dati Le agenzie di viaggio accedono ad un unico database Principali problemi Non modificare, nello stesso momento, gli stessi dati. Garantire correttezza da malfunzionamenti hardware o errori umani Garantire la sicurezza e la riservatezza dei dati Solo le persone autorizzate possono accedere ai dati Uso del sistema user-friendly 20/05/02 Prof. Carlo Blundo 4 2

Problema Fondamentale nei Database Trovare il modo più idoneo ed economico per rappresentare (memorizzare) i dati. Nel caso di dati relativi a biblioteche, agende, magazzini si hanno degli strumenti già consolidati dalla fine degli anni 70. Nel caso database relativi ad informazioni geografiche (o database di immagini) la ricerca è ancora aperta. 20/05/02 Prof. Carlo Blundo 5 DataBase ~ Schedario I dati in un database sono organizzati in tabelle. Ogni tabella e formata da record, a loro volta organizzati in campi. Il campo è un area destinata a ricevere un tipo specifico di dati e contiene un unico dato. Uno spazio della scheda da riempire (nome, cognome, data di nascita ) Un record è una collezione di campi Una scheda dello schedario Una tabella è una collezione di record Una cartella dello schedario Ad ogni tabella (archivio) è associato un nome 20/05/02 Prof. Carlo Blundo 6 3

Tabelle nei Database Possiamo rappresentare i dati in un database in forma tabellare. Le righe della tabella rappresentano i record Le colonne della tabella rappresentano i campi Nome Franca Elisa Mario record campo Cognome Verdi Rossi 35/100102 Matricola 53/7336 089/223412 Telefono 085/77822 Bianchi 56/1230 0828/213412 20/05/02 Prof. Carlo Blundo 7 Il Record Il record contiene informazioni relative ad un soggetto (Es., Studente Universitario). Ogni soggetto deve essere descritto da caratteristiche, chiamate attributi, che lo differenziano dagli altri (Es., Nome, Cognome). Gli attributi determinano i campi del record. 20/05/02 Prof. Carlo Blundo 8 4

I Campi Il campo ha una serie di proprietà Il tipo determina quali dati possono essere inseriti e che tipo di operazioni si possono eseguire (testo, numero, data, booleano) la lunghezza determina la quantità di memoria riservata 20/05/02 Prof. Carlo Blundo 9 Organizzazione Logica dei Dati Gerarchica I record sono organizzati in una struttura gerarchica Ci sono delle dipendenze tra i record del database Reticolare I record sono organizzati in una struttura reticolare Tutti record del database sono sullo stesso piano Relazionale Tabelle messe in relazione tra loro tramite i campi 20/05/02 Prof. Carlo Blundo 10 5

Modello Gerarchico studente Cognome Nome Matricola D_Nascita esame CodEsame Data Voto corso Codice Annualità Docente Nelle interrogazioni al database si seguono le frecce docente Cognome Nome Fascia Dipartimento 20/05/02 Prof. Carlo Blundo 11 Modello Reticolare studente Cognome Nome Matricola D_Nascita esame CodEsame Data Voto corso Codice Annualità Docente Si riesce ad individuare tutti quelli che hanno superato l esame docente Cognome Nome Fascia Dipartimento 20/05/02 Prof. Carlo Blundo 12 6

Modello Relazionale studenti Cognome Nome Matricola D_Nascita Città corsi Codice Nome Durata esami Codice Matricola Data Voto docenti Cognome Nome Fascia Dipartimento Codice Archivi espressi in forma tabellare. Ogni tabella contiene un campo che identifica univocamente il record. Questo campo è detto chiave e mette in relazione archivi distinti. 20/05/02 Prof. Carlo Blundo 13 Indici in un Database Informazioni, associate agli archivi, che vengono utilizzate per velocizzare la ricerca dei dati. L indice di una tabella può essere visto come l indice di un libro. Per trovare un argomento si cerca nell indice la pagina relativa dell argomento e poi si apre la pagina individuata. 20/05/02 Prof. Carlo Blundo 14 7

Archivio Indice Contengono il campo chiave ed il numero di record associato a quella chiave. Matricola 35/1102 53/7336 56/1230 Record Nome Franca Elisa Mario Cognome Verdi Rossi Bianchi Matricola D_Nascita 35/1102 21/12/78 53/7336 07/06/75 56/1230 17/02/78 Città Salerno Napoli Avellino 20/05/02 Prof. Carlo Blundo 15 Architettura di un Database Esistono tre livelli: Fisico Si occupa della memorizzazione fisica dei dati. (come organizzare i dati nei file, come strutturare i record, come formattare i campi, ecc.) Logico Descrive il tipo di dati contenuti nel database e le loro proprietà. Determina le relazioni logiche tra le tabelle. Esterno Definisce l interfaccia con l utente e consente l accesso ai dati. Fornisce dati virtuali, non esistenti nel database ma deducibili da altri 20/05/02 Prof. Carlo Blundo 16 8

Progettazione di un Database Determinare: Lo scopo del database Le tabelle necessarie alla rappresentazione delle informazioni I campi necessari alla rappresentazione dei dati Identificare i record in maniera univoca Stabilire le relazioni tra le tabelle Perfezionare (se possibile) la struttura del database 20/05/02 Prof. Carlo Blundo 17 Determinare lo Scopo È necessario stabilire quali informazioni si desidera rappresentare nel database. Le informazioni che si desiderano memorizzare nel caso di un database per la segreteria studenti potrebbero non contenere informazioni relative agli orari di apertura dei laboratori didattici. 20/05/02 Prof. Carlo Blundo 18 9

Determinare le Tabelle Necessarie Dividere le informazioni in gruppi omogenei in modo che una tabella contenga dati relativi ad un solo argomento. Si tengono separati gli studenti dagli esami superati. Più tabelle non devono contenere le stesse informazioni. Ridurre al minimo indispensabile la ridondanza. 20/05/02 Prof. Carlo Blundo 19 Determinare i Campi Necessari Ciascun campo di una tabella contiene singoli dati relativi all argomento (soggetto) della tabella. Studenti=[Cognome, Nome, Matricola, D_Nascita, Città]. Esami=[Codice, Matricola, Data, Voto]. Una tabella non deve contenere informazioni duplicate. 20/05/02 Prof. Carlo Blundo 20 10

Identificare i Record in Maniera Univoca Per ogni tabella individuare il campo chiave (il campo che identifica univocamente un record). Matricola è il campo chiave della tabella Studenti. Un campo o un insieme di campi che identificano in modo univoco un record è chiamato chiave primaria. 20/05/02 Prof. Carlo Blundo 21 Stabilire le Relazioni tra le Tabelle Dopo aver suddiviso le informazioni nelle tabelle ed aver identificato i campi chiave è necessario definire come le tabelle sono correlate tra di loro. La tabella Studente è messa in relazione con quella Esami tramite il campo chiave Matricola. 20/05/02 Prof. Carlo Blundo 22 11

Uno a Uno Tipi di Relazioni Ad ogni record contenuto in una tabella corrisponde un solo record di una seconda tabella. Uno a Molti Ad ogni record di una tabella corrispondono più record contenuti in una seconda tabella. Molti a Molti A più record di una tabella corrispondono più record contenuti in una seconda tabella. 20/05/02 Prof. Carlo Blundo 23 Relazione Uno a Uno Uno studente può essere iscritto ad un unico corso di laurea. Ad ogni record dell archivio Studenti corrisponde un unico record dell archivio Corsi_di_Laurea. Le prime due cifre della matricola indicano in corso di laurea. 56 Informatica 47 Scienze della Formazione 20/05/02 Prof. Carlo Blundo 24 12

Esempio di Uno-a-Uno Russo - Maria - 47/100103-23/07/74 - SA Codice - Nome_CdL - Facoltà - Presidente Campo chiave dell archivio Corsi_di_Laurea 20/05/02 Prof. Carlo Blundo 25 Relazione Uno a Molti Ad ogni record della tabella Studenti sono associati (si spera ) più record della tabella Esami. Russo - Maria - 47/100103-23/07/74 - SA K1-47/100103-12/06/99-28 K7-47/100103-22/07/99-30 20/05/02 Prof. Carlo Blundo 26 13

Relazione Molti a Molti In un database per la gestione di un magazzino ci sarà un archivio clienti ed un archivio prodotti. Ad ogni cliente può essere associato più di un prodotto ed allo stesso tempo ad ogni prodotto può essere associato più di un cliente. Rossi Bianchi Verdi ordina Scarpe Maglia Cappotto 20/05/02 Prof. Carlo Blundo 27 Perfezionare la Struttura del Database Eliminare dalle tabelle la ridondanza (duplicazione di informazioni nel database) non necessaria. esami Codice Cognome Nome Matricola D_Nascita Città Data Voto studenti Cognome Nome Matricola D_Nascita Città 20/05/02 Prof. Carlo Blundo 28 14

Query È sinonimo di interrogazione ed indica il processo di estrazione dei dati da un database secondo determinati criteri. Da una tabella se ne costruisce un altra che soddisfa dei criteri prestabiliti. Tramite la funzione JOIN è possibile fondere più tabelle tra di loro per ottenerne una nuova. 20/05/02 Prof. Carlo Blundo 29 Come Creare le Query QBE (Query By Example) Si selezionano i campi che interessano e si specificano i criteri da considerare. SQL (Structured Query Language) Linguaggio di interrogazione utilizzato nella manipolazione di query e nella manutenzione di database in generale 20/05/02 Prof. Carlo Blundo 30 15

Esempi di Query con SQL (I) SELECT Cognome FROM Studenti Si selezionano tutti i cognomi dalla tabella Studenti È come costruire una nuova tabella con un solo campo: Cognome. SELECT Matricola, Cognome FROM Studenti Si selezionano tutti i cognomi ed i numeri di matricola dalla tabella Studenti. 20/05/02 Prof. Carlo Blundo 31 Esempi di Query con SQL (II) SELECT Matricola FROM Esami WHERE Esami.Voto > 26 Dalla tabella Esami si selezionano tutti i numeri di matricola di studenti che hanno superato esami con votazione superiore a 26. SELECT * FROM Esami WHERE Esami.Matricola = 53/07336 Dalla tabella Esami si selezionano tutti i record associati alla matricola 53/07336. 20/05/02 Prof. Carlo Blundo 32 16