Basi di Dati - 3 Dati su più tabelle Informatica 1 (SAM) - a.a. 2010/11
Relazioni tra tabelle relazione tra i record – facendo corrispondere codici uguali nelle due tabelle chiave primaria chiave esterna
Informatica 1 (SAM) - a.a. 2010/11 Relazioni Ci sono tre tipi di relazioni: – uno-a-molti (la più frequente) – uno-a-uno – molti-a-molti
Informatica 1 (SAM) - a.a. 2010/11 Diversi tipi di relazione -1 Relazione uno-a-molti – Es. tra corso di laurea e studenti Ogni corso di laurea può avere molti studenti, ma ogni studente può essere iscritto ad uno solo dei corsi di laurea – Es precedente: tra libri e autori Supponendo per semplicità che ogni libro sia scritto da un solo autore E' la relazione più frequente
Informatica 1 (SAM) - a.a. 2010/11 Diversi tipi di relazione -2 Uno-a-uno – es. tra studenti che sostengono esami e persone che pagano le tasse universitarie Ad ogni studente corrisponde una ed una sola persona, e viceversa Relazione molto rara Le due tabelle potrebbero essere combinate insieme, senza ripetizioni dei dati – Utile quando si vogliono separare gli archivi
Informatica 1 (SAM) - a.a. 2010/11 Diversi tipi di relazione -3 Molti-a-molti – Es. studenti - appelli Uno studente può essere iscritto a molti appelli, ed un appello può contenere molti studenti Relazione frequente, ma difficile da gestire – Ci vuole una tabella intermedia Es. una tabella prenotazioni che lega studenti ed appelli di una disciplina
Informatica 1 (SAM) - a.a. 2010/11 Query "interrogazione" sulla base di dati – combina più tabelle (al contr. dei filtri) – seleziona solo alcuni record (criteri) – ordina il risultato secondo una o più colonne può essere salvata (al contr. dei filtri)
Informatica 1 (SAM) - a.a. 2010/11 Query su più tabelle Una query può coinvolgere più tabelle in relazione tra loro – Nella composizione guidata di Access, è sufficiente scegliere le relazioni da cui prendere i dati – Es. per autori e libri "dammi tutti i libri scritti da autori italiani, facendomi vedere il titolo del libro e il nome dell'autore"
Informatica 1 (SAM) - a.a. 2010/11 Esempio di query "trova tutti i libri scritti da autori italiani che costano più di 20 euro" combina le tabelle autori e libri seleziona gli autori italiani seleziona i libri con costo >20 il risultato è "come" una tabella (ma non lo é)
Informatica 1 (SAM) - a.a. 2010/11 Maschere su due tabelle Quando le tabelle sono in relazione uno- a-molti, si può fare una maschera con sottomaschera – Es. inserisci un autore (maschera principale) – e alcuni/tutti i suoi libri (sottomaschera) nome Italo cognome Calvino
Informatica 1 (SAM) - a.a. 2010/11 Report su più tabelle e query si possono scegliere: – campi di tabelle diverse, in relazione – campi delle query salvate si sceglie una query quando il report deve contenere solo alcuni record selezionati (quelli selezionati dalla query)