Progettare database con SQL Server
Alla fine del corso l'allievo sarà in grado di progettare e realizzare qualsiasi database. Apprenderai i concetti teorici sui database e realizzati numerosi esempi pratici con SQL server
A chi è rivolto
Il corso è rivolto a chi vuole apprendere i principi teorici e pratici della progettazione dei database a livello professionale.
Il corso in breve
Scheda del corso
| Ore |
40 |
| Lezioni |
20 |
| Periodo | da Dicembre a Maggio |
| Livello |
professionale |
| Competenze richieste |
uso del computer |
| Docenti | Vincenzo Di Luzio |
| Prezzo |
- |
Il programma del corso
- Introduzione alle Basi di dati
- Sistemi informativi e sistemi informatici. Le basi di dati. Il DBMS. Tipologie di utenti di un DBMS. Linguaggi per basi dati: DDL e DML.
- Architetture delle Basi di dati
- I modelli dei dati. Schemi e livelli di astrazione in una base di dati. L'architettura ANSI/SPARC a tre livelli. Linguaggi ed interfacce per basi dati. Architetture centralizzate e client/server.
- Modello ER per modellare i dati
- Modelli di dati concettuali ad alto livello per la modellazione dei dati. Applicazione di esempio. Tipi di entità, insiemi di entità, attributi e chiavi. Tipi di associazione, insiemi di associazioni, ruoli e vincoli. Entità deboli. Raffinamento progettazione ER.
- Modello EER e modellazione UML
- Sottoclassi, superclassi ed ereditarietà. Specializzazione/generalizzazione. Tipi di associazione di grado maggiore di due. Astrazione dati, rappresentazione della conoscenza e ontologia.
- Il modello relazionale
- Prodotto cartesiano e relazioni. Corrispondenze fra relazioni. Informazione incompleta e valori nulli. Vincoli di integrità. Vincoli intrarelazionali: vincoli di tupla, vincolo di chiave. Vincoli interrelazionali: vincoli di integrità referenziale. Aggiornamento egestione delle violazioni e dei vincoli.
- L'algebra relazionale
- Operatori dell'algebra relazionale: operatori insiemistici, ridenominazione, proiezione, selezione, join. Join naturale. Join esterno. Theta-join. Interrogazioni in algebra relazionale. Trasformazioni di equivalenza per espressioni in algebra relazionale. Algebra con valori nulli. Viste.
- Calcolo relazionale
- Calcolo su domini. Costruzione delle formule: operatori logici and, or e not; quantificatore esistenziale e universale; Interrogazioni in calcolo sui domini. Calcolo su tuple con dichiarazione di range. Interrogazioni in calcolo su tuple. Limitazioni del calcolo relazionale.
- Traduzione di schemi ER e EER a schemi relazionali
- Il processo di traduzione da ER a relazionale. Traduzione di costrutti EER in relazioni.
- Principi di SQL/SQL Server.
- Lo standard SQL-2. Definizione di schemi in SQL: tipi di dato di base e definiti dall'utente, definizione di tabelle; definzione dello schema; definizione di vincoli (intrarelazionali semplici, di integrità referenziale, e generici). Definizione di indici. Istruzioni per la modifica dello schema. Interrogazioni in SQL: il comando select; formule di selezione; ordinamento del risultato; join di tabelle. Uso di variabili. Operatori aggregati. Interrogazioni con raggruppamento. Interrogazioni nidificate. Operatori su insiemi. Istruzioni di inserimento, cancellazione e modifica. Le asserzioni. Le viste. Controllo degli accessi: identificazione, risorse e privilegi.
- SQL: asserzioni, viste, trigger e tecniche di programmazione
- Specificazione vincoli mediante asserzioni. Viste in SQL. Trigger e concetti di basi di dati attive. Problematiche programmazione basi di dati. SQL embedded ed SQL dinamico. Funzioni. Stored procedure per le basi di dati.
- Progettazione concettuale
- Fonti dei requisiti. Organizzazione e scrittura dei requisiti. Sviluppo del modello ER. Strategie di progetto: bottom-up, top-down, inside-out e ibrida. Qualità di uno schema concettuale. Strumenti CASE per la progettazione.
- Progettazione logica
- Analisi delle prestazioni su schemi ER. Volume dei dati. Caratteristiche delle operazioni: schema di operazioni e tavola degli accessi. Ristrutturazione di schemi ER: analisi delle ridondanze, eliminazione delle generalizzazioni, partizionamento/accorpamento di entità e associazioni, scelta degli identificatori primari. Traduzione verso il modello relazionale. Traduzione di relazioni molti-a-molti, uno-a-molti e uno-a-uno. Un esempio di progettazione logica. Uso di strumenti CASE per la progettazione logica.
- Dipendenze funzionali e normalizzazione per basi di dati relazionali
- Ridondanze e anomalie. Le dipendenze funzionali. Dipendenze non banali. Dipendenze e chiavi. Forma normale di Boyce e Codd. Normalizzazione in BCNF. Decomposizioni senza perdite. Decomposizioni con conservazione delle dipendenze. La terza forma normale. Decomposizione in 3FN. Normalizzazione e schemi concettuali.
- Strato fisico: memorizzazione di dati, indici, elaborazione delle interrogazioni e progettazione fisica
- Memoria secondaria. Collocazione sul disco dei record di un file. Operazioni su file. Techiche hash.
- Indici per file
- Tipi di indici ordinati a un solo livello e indici multilivello. Alberi B e alberi B1. Indici su chiavi multiple. Altri tipi di indici.
- Transazioni
- Introduzione alla gestione delle transazioni. Concetti di transazione e di sistema.
- Progetti da realizzare
- Supermarket. Videoteca. Internet Cafè. Progetti classici di SQL Server: World, Salila e Menagerie.
Preparazione richiesta
Competenze
Per partecipare al corso progettare database con SQL Server non è necessaria alcuna preparazione specifiaca. E' sufficiente impiegare al meglio il personal computer.
Tuttavia è consigliabile conoscere i concetti di base della programmazione. Queste competenze possono essere acquisite con il corso Fondamenti di programmazione.
Il materiale didatico
Il libro scelto per il corso
Al momento non è satto scelto alcun libro per il corso
Cancelleria e supporti
- una cartellina, una penna ad inchiostro liquido, un blocco note;
- una pen-drive USB da 512Mbyte.
Offerta speciale!
porta i tuoi amici
Se porti uno o più amici ci sono sconti per tutti.
- 10% a ciascuno con 1 amico
- 15% a ciascuno con 2 amici
- 20% a ciascuno con 3 amici
- la 5^ persona è gratis!
L'offerta vale anche per iscrizioni non contemporanee. E' sufficiente essere iscritti allo stesso corso.
note
Noi cerchiamo di:
- rendere i programmi dei corsi sempre migliori;
- tenerci sempre aggiornati con il materiale didattico;
- considerare le esigenze particolari dei corsisti
Per questo motivo il programma del corso e il materiale didattico (specialmente i libri di testo), possono subire variazioni dell'ultimo momento rispetto a quando indicato in questa pagina.