Vai alla Home Page About me Courseware Federica Living Library Federica Virtual Campus 3D Le Miniguide all'orientamento Gli eBook di Federica
 
 
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