Basi di dati T2/2006-2007

Da WikiDsy.
Versione del 26 ott 2006 alle 12:46 di 159.149.130.33 (discussione) (Materiale scaricabile)

Orari delle lezioni

  • Martedì, 17:45-19:15, aula Beta
  • Mercoledì, 17:45-19:15, aula Beta
  • Giovedì, 17:45-19:15, aula Beta

Scaglione alfabetico

Il turno 2 comprende gli studenti nello scaglione H-Z

Professore

Alfio Ferrara

Sito del corso

Sito web del corso

Materiale didattico

Corso

Testo di riferimento:

Altri testi utili:

  • P.Atzeni, S. Ceri, S. Paraboschi, R. Torlone 'Basi di dati, II Edizione', McGraw-Hill, 1999.

Laboratorio

Testi consigliati:

  • L. Welling, L. Thomson 'MySQL Tutorial', Pearson-Addison Wesley, 2004.
  • David Sklar 'PHP 5 - Elementi di programmazione', McGraw-Hill, 2005.
  • A. Gutmans, S. Bakken, D. Rethans 'PHP 5 Guida Completa', Apogeo, 2005.

Materiale scaricabile

Modalità d'esame

L'esame consiste in una prova scritta, una (eventuale) discussione orale e nello svolgimento di un progetto di laboratorio.

Prova scritta Consiste di una parte A con domande di teoria e di una parte B con esercizi.

Discussione orale Per risultati fino a 24/30, SI CONFERMA DIRETTAMENTE il risultato della prova scritta. Per votazioni superiori a 24/30 OCCORRE SOSTENERE la prova orale per la conferma del voto; in caso contrario si intende confermata la votazione di 24/30.

Svolgimento di un progetto: vedere la sezione Progetto

Svolgimento dell'esame: che cosa bisogna fare Lo studente deve iscriversi OBBLIGATORIAMENTE VIA SIFA all'appello d'esame che intende sostenere. Lo studente che si iscrive ad un appello d'esame per sostenere lo scritto DEVE consegnare anche il progetto il giorno stesso dell'esame. Gli studenti che sostengono l'esame mediante le prove in itinere potranno consegnare il progetto entro e non oltre l'appello di Aprile.

IMPORTANTE. Qualora uno studente non superasse lo scritto, il progetto consegnato verrà corretto. I progetti sufficienti avranno validità un anno a decorrere dall'appello di consegna.

Progetto

Progetti di laboratorio

I progetti per l'Anno Accademico 2006-2007 verranno comunicati durante il corso.

Svolgimento dei progetti

Il progetto può essere svolto in gruppi di non più di 3 studenti. Può essere sviluppato su propri PC o presso i laboratori didattici, ma l'applicazione dovrà essere visionabile su un calcolatore portatile o on-line in sede d'esame. Per la valutazione dell’elaborato avrà luogo un apposito colloquio a cui tutti i membri del gruppo sono tenuti a partecipare. In casi giudicati eccezionali, e' anche possibile proporre un progetto alternativo. In questo caso dovrà essere inviata una email ai docenti allegando una descrizione della proposta di circa 2 pagine. La proposta sarà valutata dai docenti per l'eventuale accettazione.

Consegna dei progetti

Il progetto deve essere consegnato entro la data dell'appello d'esame scritto che lo studente intende sostenere. Il materiale deve essere consegnato entro la scadenza al prof. Ferrara durante il suo orario di ricevimento. In alternativa, il materiale può essere lasciato entro la scadenza nella casella postale del prof. Ferrara accanto alla portineria del dipartimento in via Comelico, 39. I progetti consegnati saranno corretti secondo un calendario di correzione che verrà pubblicato per ogni appello d'esame su questo sito. I progetti sufficienti avranno validità UN ANNO a decorrere dall'appello di consegna.

Diario del corso

Lezioni fino all'11/10/2006

  • introduzione al DBMS (è un sistema software che serve per manipolare condividere etc.... basi di dati)
  • obbiettivi del DBMS (efficienza, gestione della concorrenza, funzionalità di salvataggio e ripristino dei dati, gestione delle interrogazioni in modo efficiente, garantire protezione dei dati)
  • DBMS gestisce dati e metadati

Perchè usare una BD (base di dati)

Varie figure di utenza con accesso al database DBA (database administrator, utenti occasionali, utenti registrati etc...)

  • Modello dei dati
  • Differenza tra associazione e relazione di dati

Lezione del 12/10/2006

Schema e istanza

  • definizione di intensionale estensionale
  • insieme delle istanze
  • stato della base di dati

Livelli

  • livello esterno (sono le viste)
  • livello logico (sono le tabelle)
  • livello interno (sono i file)

note: quindi DBMS lavora su 3 livelli

Indipendenza

  • indipendenza dei dati
  • indipendenza logica

I linguaggi

  • DDL (scrive il catalogo "metadati" )
  • DML (scrive i dati ed interroga la BD) è un linguaggio di query
  • UDL viste esterne

note: SQL li incorpora entrambi (DDL e DML)

Classificazione dei DBMS

  • In base al modello dei dati:
    • relazionali,
    • object-oriented,
    • reticolari,
    • gerarchici,
    • object relational
  • In base al n° di utenti:
    • mono utente (es: access)
    • multi utente
  • In base al n° di siti in cui la BD è distribuita:
    • BD centralizzata (tutto su un solo server)
    • BD distribuita (BD su molteplici server) ogni transizione coinvolge più server, c'è da risolvere il problema della concorrenza

Lezione del 17/10/2006

  • Il fondamento del modello relazionale è una relazione matematica fra domini + un insieme di domini
  • Definizione di schema, attributo, schema di relazione, schema di basi di dati, istanza di relazione, istanza di basi di dati.
  • Problema dei dati incompleti: l'operatore NULL

Lezione del 18/10/2006

Vincoli

  • Intrarelazionali
    • su valori
    • di ennupla
    • di dominio
  • Interrelazionali

Chiave

  • Definizione
  • Superchiave
  • Chiave primaria

Integrità referenziale (definizione)

Tipi di attributo

  • semplice (atomico)
  • multivalore
  • strutturato

Prima forma normale (definizione)

Lezione del 19/10/2006

non ero presente, mi riferiscono

Le operazioni sul database (Theta join, join naturale, selezione, proiezione..)

Lezione del 24/10/2006

  • Outer Join
  • Regole di trasformazione
    • Atomizzazione delle selezioni
    • Commutatività della selezione
    • Idempotenza delle proiezioni
    • Anticipazione della selezione rispetto al Join
    • Anticipazione della proiezione rispetto al Join
    • Conversione di 1 sequenza
  • Esempi (presidenti americani)

Lezione del 25/10/2006

  • Esempi (sempre sui presidenti americani)
  • Accenno di SQL
    • Domini
    • CREATE SCHEMA (sintassi)
    • CREATE TABLE (sintassi)
    • Elementi dello schema

Lezione del 26/10/2006

ESERCITAZIONE