Vai alla Home Page About me Courseware Federica Living Library Federica Virtual Campus 3D Le Miniguide all'orientamento Gli eBook di Federica
 
I corsi di Ingegneria
 
Il Corso Le lezioni del Corso La Cattedra
 
Materiali di approfondimento Risorse Web Il Podcast di questa lezione

Bruno Fadini » 14.Elementi di progetto di un DB relazionale - Modulo 3


Abilità Informatiche di base

Elementi di progetto di un DB relazionale

Argomenti

  • Espressioni logiche
  • Elementi di progetto di un DB relazionale
  • Definizione di una BDR
  • Elementi di progetto dell’ I/O: Maschere e Report

Espressioni Logiche

Cosa è una espressione logica (o predicato)

  • Una condizioni che può essere vera o falsa (p.e. X>0) e condizionare un’attività
  • Esempio (X è il nome di un campo):
    • accetta il dato solo se è X>0
    • seleziona i record per i quali è X>0

Espressioni Logiche – Operatori

Espressioni Logiche

Operatori: esempi

(il nome del campo è sottinteso)

DI CONFRONTO

  • < 100 (minore di 100)
  • >= 1 (maggiore o uguale a 1)
  • Between 10 and 100 (Compreso fra 10 e 100)
  • In (10, 20, 30) (il valore è uno di quelli elencati)

LOGICI

  • = 100 Or =200 (uguale a 100 oppure a 200)
  • = 0 Or >5 (uguale a 0 oppure maggiore di 5)
  • >= 10 And <= 100 (equivale a “Between 10 And 100″)

Espressioni Logiche

Is Null, Like e caratteri “jolly”

  • Is Null: è nullo
  • Like si usa con caratteri Jolly: * e ? (come in Windows)
  • Esempi
    • Campo Like “*a” è vera se il campo (di tipo testo) finisce per a
    • Campo Like “a?a” è vera se il campo è un testo e vale “aba”, “ada”, “ada”, “afa” etc.
    • Campo Is Null è vera se il campo è “nullo”
    • Campo Not Like “*a”: il campo non finisce per “a”
    • Campo Not Like “a?a”: il campo non è una delle parole “aba”, “ada”, “ada”, “afa” etc.
    • Campo Is Not Null: il campo non è “nullo”
    • Titolo Like “Stori*” And Titolo Not Like “*Italia*” è vera per un titolo che sia “Storia di Francia”, “Storie degli inglesi” etc., ma non per “Storia di Italia” né per “Storie degli italiani”

Elementi di progetto

Progetto Concettuale (cenno)

  • Modello Entità/Relazione (ER): è un modello della realtà che prescinde dalle tabelle, le quali sono un risultato del progetto
  • In ER, la realtà viene rappresentata con
    • Entità (Nome di un prodotto, Costo di un prodotto, Nome di un produttore, etc.)
    • Relazioni fra queste, p.e.:
      • il prodotto ha un costo
      • il prodotto è fabbricato da un produttore
      • etc.

Dal modello ER si trae quello della BDR, basato sulle tabelle (Progetto logico)

Elementi di progetto

Normalizzazione (forme normali)

  • Su un piano intuitivo, una base di dati deve possedere un insieme di proprietà per essere ben gestita:
    • deve rappresentare concetti diversi in tabelle diverse
    • non deve contenere inutili duplicazioni di dati
    • deve essere semplice da interpretare e da gestire
    • deve consentire agevolmente inserzioni, cancellazioni e aggiornamenti
    • (altre proprietà importanti necessitano una formalizzazione)
  • Su un piano formale, esistono diverse proprietà che devono essere rispettate affinché una BDR rispetti le proprietà di cui sopra
  • Queste si dicono forme normali: prima forma normale (1NF), seconda (2NF) etc.; la loro descrizione si omette in questo corso

La normalizzazione delle BDR è processo importante del progetto logico

Elementi di progetto

Progetto logico: definizione della BDR

Occorre definire:

  1. Le tabelle e i loro campi
  2. Il tipo, la dimensione e le altre caratteristiche dei campi
  3. La chiave primaria di ogni tabella
  4. I campi indicizzati, se vi sono, e le loro caratteristiche
  5. Le relazioni fra tabelle ed i connessi vincoli di integrità referenziale

Le tecniche usate dai diversi DBMS variano lievemente; p.e.:

  • Microsoft Access definisce da un lato le tabelle (voci 1-4), dall’altro le relazioni (voce 5)
  • SQL definisce le chiavi esterne all’interno della definizione di tabella.

Elementi di progetto

Linguaggi per definire la BDR

  • Anche per manipolare ed interrogare il database
  • Linguaggio di riferimento: SQL
Esempio di istruzioni

Esempio di istruzioni

Esempio di clausole (completano istruzioni)

Esempio di clausole (completano istruzioni)


Definizione di una BDR

Creazione di tabelle

  • Creare una tabella = voci 1-4 dell’elenco
  • Tecniche QBE: vedi II parte
  • Tecniche SQL (per fissare le idee)

Definizione di una BDR

Generazione di relazioni

  • = voce 5 dell’elenco
  • Tecniche QBE (vedi II parte): relazioni definite a parte
  • Tecniche SQL (per fissare le idee): relazioni definite come “foreign key”

Elementi di progettazione dell’ I/O

Vincoli di immissione dati

  • Oltre ai controlli che automaticamente esegue il DBMS (vincoli strutturali)
    • Non nullità dei valori delle chiavi primarie
    • Unicità di valori per le chiavi primarie
    • Integrità referenziale
    • Appartenenza al tipo
    • Se ne possono aggiungere altri per evitare errori
    • Vincoli di dominio (p.e. BETWEEN 10 AND 10000, <100000)
    • Vincoli da maschera di input (p.e. un codice di avviamento postale ha la maschera 00000. cioè deve essere composto da 5 cifre)

Elementi di progettazione dell’ I/O

Input formattato: le maschere

  • La maschera è un oggetto dei DB attraverso cui si immette, visualizza e modifica una tabella (o query) secondo un formato programmato ad hoc: dimensioni, colori, disposizione sullo schermo, loghi, elementi grafici e quant’altro vengono accuratamente progettati
  • Ciascun campo è composto da una casella per il “valore” ed una “etichetta” associata che ne espone il nome o, meglio, il suo significato
  • La maschera può fornire suggerimenti all’utente per ridurre le probabilità di errore
  • I record possono essere esposti secondo le specifiche dei singoli DBMS
    • uno per schermata
    • uno per rigo con i valori dei campi incolonnati
    • etc.

Elementi di progettazione dell’ I/O

Output formattato: i Report

  • Il report è un oggetto dei DB simile alla maschera, destinato all’output
  • Come per le maschere, la dislocazione dei record sul tabulato rispecchia tipologie fondamentali:
    • report con un record per schermata, un campo per riga
    • report giustificato
    • report tabulare
  • Una caratteristica tipica dei report è anche la possibilità di raggruppare i record per gruppi omogenei, intestando ciascun gruppo; ad esempio si potrebbero raggruppare tutti i clienti che vivono nella stessa città ed intestare il gruppo con il nome della città
  • Si rinvia alla II parte del corso come per le maschere

Materiali di studio

Per poter utilizzare il materiale di studio è necessario utilizzare le credenziali di accesso, entrare in http://www.campus.unina.it ed infine selezionare il modulo Database.

Per approfondire gli argomenti esposti considerare le seguenti unità didattiche:

  • Elementi di progetto di un DB relazionale
  • Elementi di progettazione dell’input-output
  • Maschere e report

Prossima lezione

Costruzione e visita di una base di dati

  • Contenuti protetti da Creative Commons
  • Feed RSS
  • Condividi su FriendFeed
  • Condividi su Facebook
  • Segnala su Twitter
  • Condividi su LinkedIn
Progetto "Campus Virtuale" dell'Università degli Studi di Napoli Federico II, realizzato con il cofinanziamento dell'Unione europea. Asse V - Società dell'informazione - Obiettivo Operativo 5.1 e-Government ed e-Inclusion