Didattica

Il corso ha una durata di 40 ore divise in 5 lezioni della durata di 8 ore.
Si svolge nella fascia oraria compresa tra le 9,30 e le 18,30.

Overview

Un Database Management System (DBMS) è un sistema software progettato per consentire la creazione e manipolazione efficiente di database (ovvero di collezioni di dati strutturati) solitamente da parte di più utenti. I DBMS svolgono un ruolo fondamentale in numerose applicazioni informatiche, dalla contabilità, la gestione delle risorse umane e la finanza fino a contesti tecnici come la gestione di rete o la telefonia.
Se in passato i DBMS erano diffusi principalmente presso le grandi aziende e istituzioni (che potevano permettersi l'impegno economico derivante dall'acquisto delle grandi infrastrutture hardware necessarie per realizzare un sistema di database efficiente), oggi il loro utilizzo è diffuso praticamente in ogni contesto.

La teoria dei database, e dei DBMS, rappresenta da sempre uno dei filoni più solidi e importanti dell'informatica.

Obiettivi formativi

Acquisire le tecniche per realizzare e manipolare basi dati relazionali.

Al termine del corso i partecipanti saranno in grado di:

  • Comprendere l'utilità dei data base rispetto ad altri metodi di gestione dei dati
  • Comprendere il modello relazionale, rispetto agli altri modelli di gestione delle basi di dati
  • Valutare l'integrità referenziale di un data base
  • Imparare ad utilizzare il linguaggio SQL a livello professionale
  • Essere preparati ad utilizzare SQL con Java (JDBC, Servlet, JSP), C, PL/SQL ed altri linguaggi di programmazione

Destinatari

Il corso si rivolge a tutti i Manager e specialisti ICT che intendano acquisire le conoscenze di base della gestione delle basi dati.

Prerequisiti

Per seguire con profitto il corso è richiesta:

  • familiarità con il PC ed il Sistema Operativo
  • conoscenza basilare della lingua inglese tecnica

Programma

Modulo 1

  • Introduzione alla teoria del database
  • Differenza tra OLTP ed OLAP
  • Cenni sulla staging area
  • Struttura di un db
  • Tabelle, campi ed indici
  • Tipologie di campi (Numerici, Data/ora, stringa, booleano, blob, text o memo) e lunghezze
  • Calcolo occupazione spazio su disco

Modulo 2
  • Relazioni tra tabelle: uno a uno, uno a molti, molti a molti.
  • Concetti di Primary Key e Foreign Key.
  • Uso ed importanza degli indici.
  • Criteri di ordinamento e codifica ascii.
  • Normalizzazione del database

Modulo 3
  • I concetti della integrità referenziale
  • Le opzioni On Update e On Delete Cascade
  • Differenza tra DDL e DML
  • Approfondimenti riguardanti CREATE DATABASE/TABLE, modifica delle tabelle con ALTER TABLE.
  • Sintassi INSERT, UPDATE e REPLACE

Modulo 4
  • Confronto fra Motori db engines
  • Cenni sulle diversità delle istruzioni in SQL a seconda dell'engine utilizzato
  • Sintassi delle SELECT
  • Uso delle SubQuery
  • Concatenamenti, filtri avanzati, raggruppamenti, distinct, union

Modulo 5
  • Trigger e Viste
  • Query di unione, intersezione ed esclusione
  • Applicazioni e confronto con i prodotti di reportistica analitica
  • Intervento su codici sql esistenti per l'analisi, la comprensione, l'ottimizzazione e la rescrittura

Certificazioni

Il corso non prevede percorsi di certificazione specifici.