1 / 19

Modulo 104

Informatici I°anno – 2010/2011. Modulo 104. Implementare un modello di dati. Introduzione ai database.

studs
Download Presentation

Modulo 104

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Informatici I°anno – 2010/2011 Modulo 104 Implementare un modello di dati

  2. Introduzione ai database • Per comprendere appieno cos’è un Data Base e quali sono i vantaggi legati al suo impiego, soprattutto nel settore gestionale, è necessario definire in modo esatto e preciso cosa si intende per: • Data Base • Data Base Management System (DBMS)

  3. Data Base • Un Data base può essere definito come un insieme di dati strettamente correlati, memorizzati su un supporto di memoria di massa, costituenti un tutt'uno, che possono essere manipolati, da più programmi applicativi; oppure possiamo dire che è un sistema di gestione di dati integrati, ricompilati e immagazzinati secondo precisi criteri, necessari all'attività che si deve svolgere.

  4. DBMS • Un Data base Management System (DBMS) è un sistema software per la gestione di basi dati; esso si occupa dell'aggiornamento, della manutenzione e della consultazione di un insieme di registrazioni contenute in un supporto di memoria di massa. Il DBMS, pertanto, è un insieme di programmi, che sono rivolti alla gestione di dati memorizzati in archivi.

  5. I vari DBMS • Quali DBMS in ambiente PC: • dBase (per windows) • FoxPro (per windows) • Access (per windows) • SQL server (client/server) • Oracle (client/server) • Informix (client/server) • …. NB: client/server si riferisce a sistemi distribuiti in rete con elaboratori più potenti che gestiscono i dati (server) e PC collegati da cui gli utenti richiedono operazioni (client)

  6. Vantaggi utilizzo DBMS • Permette un “uso amichevole” delle procedure di gestione di facile utilizzo all’utente. • Evita la programmazione per compiti comuni: il programma incorpora una serie di funzioni che consentono di svolgere operazioni senza la necessità di un linguaggio di programmazione. • I DBMS, tramite l’indipendenza dei dati, favoriscono lo sviluppo di applicazioni flessibili e facilmente modificabili. • Un Data Base permette di relazionare dati tra loro, ciò che riduce di molto le duplicazioni.

  7. Svantaggi dei DBMS • I DBMS sono prodotti costosi e complessi la cui introduzione in una realtà esistente comporta notevoli investimenti in termini di hardware,software ed addestramento di personale. • Spesso i DBMS forniscono un numero di servizi maggiore di quelli richiesti; la difficoltà di isolare soltanto quelli necessari comporta molte volte costi e perdita di efficienza dell’attività.

  8. Il modello relazionale • Il modello relazionale prevede un costrutto di relazioni che permette di organizzare i dati in insiemi di record(tuple) a struttura fissa; la rappresentazione più usata di tale costrutto è quella di tabella: • le righe corrispondono ai record; • le colonne corrispondono agli attributi o campi dei record. Programma Insegnamenti

  9. Data Base relazionali • Si presentano in forma tabellare in cui le righe rappresentano i record e le colonne rappresentano i campi. • Le operazioni realizzate con questo tipo di Data Base riguardano le tabelle. Campi Record

  10. Data Base relazionali • Oggi i principali Data Base in circolazione sono di tipo relazionale, ciò perché praticamente tutti gli insiemi di dati che corrispondono a entità complesse organizzate come imprese, scuole, associazioni varie,… implicano collegamenti tra i vari dati ad esempio: ai fornitori sono collegate le merci, agli alunni i corsi, e così via. La norma fondamentale per stabilire relazioni tra tabelle, è che il campo di collegamento non deve avere ripetizioni, ossia ogni record deve potere essere identificato in maniera univoca.

  11. Data Base relazionali • Il campo che permette l'identificazione di ogni record è detto "chiave primaria" e deve essere comune alle tabelle che si intende correlare. ID_Cliente = Chiave primaria

  12. Progettazione di un Data Base • I passi fondamentali da compiere per progettare un Data Base sono essenzialmente tre: • MODELLO CONCETTUALE(in cui viene schematizzata la realtà) ; • MODELLO LOGICO(che produce lo schema logico) ; • MODELLO FISICO(che produce lo schema fisico) ; • Il modello che realizza questi tre passaggi viene chiamato Modello Entità - Relazione (E-R).

  13. Modello Entità-Relazione • Il Modello Entità-Relazione (ER) è un modello concettuale basato su componenti essenziali quali: entità, attributi e relazioni. • Il modello introduce una rappresentazione grafica dello schema concettuale. Esso prevede come prima cosa l’individuazione delle entità, ossia degli oggetti concreti o astratti, rilevanti per il sistema informativo. • Graficamente i tipi di entità sono rappresentati con il loro nome racchiuso dentro un rettangolo. • Le proprietà caratteristiche di ciascun insieme di entità vengono descritte mediante l’uso di attributi con un elisse.

  14. Modello Entità-Relazione Gli attributi si possono distinguere in 3 categorie: • Attributi semplici: sono quelli che hanno un tipo semplice, non può essere diviso. • Attributi composti: sono quelli in cui esistono dei sotto attributi, come ad esempio l’attributo indirizzo, che è composto da via, luogo, ecc… • Attributi multipli: sono quelli che possono assumere contemporaneamente più valori, esempio gli e-mail di un cliente, che possono essere più di uno.

  15. Rappresentazione grafica (ER) Nome Cognome N_AVS clienti Luogo Gli attributi sottolineati rappresentano la chiave primaria

  16. Relazioni • Le relazioni permettono il collegamento fra tabelle, infatti permettono di inserire le dipendenze tra tabelle. • Si possono stabilire tre tipi di relazione: • Uno a uno: si tratta di relazioni tra elementi che hanno una corrispondenza univoca: ad un elemento di una tabella ne corrisponde uno soltanto in un'altra e viceversa; • uno a molti: sono relazioni che si stabiliscono tra un record di una tabella e più records di un'altra tabella, ma non il contrario; • molti a molti: un record può essere relazionato a più di un record di un'altra tabella e viceversa; questo tipo di relazione è normalmente definita tramite una terza tabella che costituisce un "ponte" tra le due da relazionare.

  17. Relazione uno a uno • Agli attributi di T1 viene aggiunta, come chiave esterna, la chiave primaria di T2, e viceversa. • Esempio: supponiamo di avere le due entità: nazioni di attributicod_naz, nome, superficie, popolazione e capitali di attributi cod_cap, nome, superficie, popolazione. La relazione che intercorre tra le due entità è evidentemente 1:1. La traduzione nello schema relazionale avviene creando due tabelle dove una (nazioni per esempio) contiene la chiave primaria dell'altra. In questo modo si è realizzato un riferimento tra la nazione e la sua capitale..

  18. Relazione uno a molti • Agli attributi di T2 viene aggiunta, come chiave esterna, la chiave primaria di T1, ma non viceversa. • Esempio: nella relazione 1:n si opera in maniera analoga, ma non è possibile invertire le chiavi esterne. Dalle entitàstudenti e libri nel Data Base biblioteca si ottengono le seguenti tabelle (la chiave primaria è identificata con * e quella esterna con #).

  19. Relazione molti a molti • In questo caso viene definita una nuova tabella, chiamata T3, che contiene, come chiavi esterne, la chiave primaria sia di T1, che di T2, ed eventuali attributi contenuti nella relativa relazione che li lega. • Esempio: la relazione n:m tra autori e libri si realizza invece introducendo un'altra tabella (il nome di quest'ultima è arbitrario) che contiene le chiavi primarie di entrambe le due tabelle precedenti.

More Related