Il 0% ha trovato utile questo documento (0 voti)
8 visualizzazioni4 pagine

Informatica (Database)

Il documento descrive i database come strumenti per gestire grandi quantità di dati in modo efficiente, evidenziando il modello relazionale e il ruolo del DBMS nella gestione dei dati. Viene presentata la progettazione di database attraverso fasi come l'analisi del problema, la progettazione concettuale e logica, e l'implementazione, con particolare attenzione al modello Entità-Relazione (E-R) e alle chiavi. Infine, si discutono le relazioni tra entità e l'importanza delle chiavi primarie e esterne per mantenere l'integrità referenziale.

Caricato da

Marco
Copyright
© All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato PDF, TXT o leggi online su Scribd
Il 0% ha trovato utile questo documento (0 voti)
8 visualizzazioni4 pagine

Informatica (Database)

Il documento descrive i database come strumenti per gestire grandi quantità di dati in modo efficiente, evidenziando il modello relazionale e il ruolo del DBMS nella gestione dei dati. Viene presentata la progettazione di database attraverso fasi come l'analisi del problema, la progettazione concettuale e logica, e l'implementazione, con particolare attenzione al modello Entità-Relazione (E-R) e alle chiavi. Infine, si discutono le relazioni tra entità e l'importanza delle chiavi primarie e esterne per mantenere l'integrità referenziale.

Caricato da

Marco
Copyright
© All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato PDF, TXT o leggi online su Scribd

DataBase

[Link] :Per gestire grandi quantità di dati, vengono utilizzati i database(raccolta di dati
progettati per essere utilizzati in maniera ottimizzata da applicazioni e utenti differenti. La
teoria che sta alla base del modello relazionale (il più utilizzato) è la stessa indipendentemente
dal produttore del database (es. Oracle, Microsoft)), strumenti più potenti e flessibili per gestire e
organizzare le informazioni.
-Un database consente di Memorizzare informazioni in modo efficiente e permanente; Ricercare e
recuperare dati in base a criteri specifici; Selezionare e raggruppare le informazioni per operazioni
specifiche; Aggiornare e modificare i dati; Cancellare dati non più utili.
-La progettazione di un database si basa su una teoria che permette di gestire grandi quantità di
informazioni in modo semplice, efficiente, efficace, sicuro, solid, condiviso.

-Un sistema informativo è un insieme organizzato di strumenti automatici, procedure manuali,


risorse umane e norme organizzative, finalizzato alla gestione delle informazioni rilevanti per
un’organizzazione.
-All'interno del sistema informativo, un sistema informatico (EDP - Electronic Data Processing)
gestisce automaticamente le informazioni, rappresentandole come dati digitali. Questo sistema
include supporti fisici (per la memorizzazione dei dati), procedure di interrogazione (per cercare
informazioni), strumenti di comunicazione tra utenti. Si divide in due componenti : Software: archivi e
applicazioni; Hardware: supporti fisici e strumenti tecnici.

-Archivio: L'insieme dei dati memorizzati su un supporto fisico.


-Applicazione informatica: La componente del sistema informatico che utilizza i dati per svolgere
una specifica funzione all'interno di un'organizzazione.
-Problemi nei Sistemi Tradizionali Senza Database :-Indipendenza delle Applicazioni: Ogni
applicazione gestisce i propri dati separatamente, senza condivisione con altre applicazioni.
-Condivisione Difficile dei Dati: Cambiare la struttura di un file per un’applicazione richiede
modifiche anche alle altre applicazioni che lo usano, causando duplicazione dei dati e possibili errori.
-Accesso Limitato ai Dati: I dati possono essere utilizzati solo dalle applicazioni che li hanno
generati, limitando l’estrazione di nuove informazioni senza creare nuove procedure costose.

-Separazione tra dati e applicazioni: Nei database, i dati sono indipendenti dalle applicazioni che li
utilizzano. Ciò permette di modificare la struttura dei dati senza impattare sulle applicazioni.
Descrizione dei dati inclusa nei dati stessi: Nei database, la definizione dei dati (tipo, formato,
struttura) è inclusa con i dati stessi, rendendoli interpretabili da qualsiasi applicazione.

-Il DBMS (Database Management System) è il sistema che gestisce i dati e la loro struttura,
garantendo l'accesso agli utenti e applicazioni e facilitando la gestione simultanea di richieste da
parte di applicazioni diverse. Le sue principali funzioni sono :
[Link] dei dati: Il DBMS gestisce grandi quantità di dati in memoria secondaria, garantendo
efficienza e tempi rapidi di accesso anche per milioni di record.
[Link] dei dati: Permette l'accesso simultaneo a più utenti, coordinando gli accessi per
evitare conflitti e assicurando dati aggiornati e coerenti.
[Link] e sicurezza: Conserva i dati nel tempo e controlla gli accessi, garantendo che solo
utenti autorizzati possano visualizzare o modificare le informazioni.
-DBMS a pagamento ( Oracle, MS SQL Server ), gratuiti ( MySQL ).

-Architettura standard a tre livelli per DBMS (ANSI/SPARC)

1. Schema Esterno: Rappresenta una porzione della base di dati di interesse per l'utente,
permettendo di creare "viste" parziali e derivate, anche in modelli diversi.

1
2. Schema Logico: Descrive l'intera base di dati nel modello logico adottato dal DBMS, senza
rivelare i dettagli fisici di memorizzazione.
3. Schema Interno (Fisico): Rappresenta lo schema logico attraverso strutture fisiche di
memorizzazione. Gli utenti accedono solo alle viste o direttamente al livello logico,
garantendo indipendenza fisica e logica dei dati.

[Link] concettuale e logica: Implica definire strutture logiche/fisiche, si articola in varie fasi :
Analisi del Problema: Comprensione delle necessità e requisiti del sistema.
Progettazione Concettuale: Creazione del modello Entità-Relazione (E-R) per rappresentare cosa
deve essere memorizzato.
Progettazione Logica: Sviluppo dello schema logico, che descrive come i dati sono organizzati.
Progettazione Fisica e Implementazione: Definizione delle strutture fisiche di memorizzazione e
sviluppo dell'applicazione.
Realizzazione delle Applicazioni: Sviluppo e test delle applicazioni che interagiscono con il
database.
-Un modello di dati rappresenta le strutture dei dati in modo astratto, facilitando la traduzione delle
informazioni dal contesto reale a quello informatico. La modellazione dei dati è fondamentale per
costruire applicazioni efficaci e ottimizzate per le esigenze degli utenti.

-La modellazione concettuale si basa principalmente su due modelli: [Link] Entità-Relazione


(E-R): Rappresenta la maggior parte delle applicazioni e produce un diagramma E-R che illustra
graficamente le strutture dei dati. Supera barriere linguistiche. [Link] a Oggetti: Meno comune
ma in crescita nel contesto commerciale.
-E’ fondamentale per evitare errori, un buon progetto deve essere corretto, completo, chiaro,
indipendente (non dipendere dallo strumento informatico utilizzato)

-La modellazione logica consiste nella definizione di uno schema in base alle caratteristiche del
sistema di gestione del database (DBMS) prescelto. Deve essere indipendente dalle strutture
fisiche: non deve riflettere dettagli della memorizzazione fisica e utilizzabile dai programmi
applicativi: deve facilitare l'interazione con le applicazioni. TIPI :
[Link] gerarchico : Struttura ad albero con una relazione 1 (uno a molti). Inefficiente nella
ricerca di dati non gerarchici e dipendenza stretta tra schema logico e fisico.

[Link] reticolare : Struttura a grafo senza una radice, con relazioni N (molti a molti), flessibilità
nelle relazioni tra record. Inefficiente nella complessità nelle modifiche e nell’accesso ai dati.

[Link] relazionale : Composto da tabelle con relazioni tra di esse, basato su insieme e relazioni
matematiche, semplice nella gestione e nell’accesso alle informazioni, consente modifiche alla
struttura fisica o logica senza influenzare le applicazioni esistenti. ( ad esempio MySQL, Oracle )

[Link] a oggetti : (ODBMS o OODBMS) si basa sui principi della programmazione orientata agli
oggetti. In questi sistemi, i dati non sono solo semplici informazioni, ma oggetti che includono sia i
dati che i metodi per manipolarli. Questo tipo di database è molto utile per applicazioni che gestiscono
dati complessi come immagini, suoni e video. Un'evoluzione di questi sistemi sono i database
relazionali a oggetti (ORDBMS), che combinano i vantaggi dei database a oggetti con quelli dei
database relazionali.

2
-L'implementazione e realizzazione di un database rappresentano l'ultima fase del processo di
progettazione. In questa fase, il database viene fisicamente creato sul computer.
L’implementazione comprende :
Completamento dello Schema Logico: Adattamento delle strutture fisiche dei dati.
Progettazione delle Procedure: Sviluppo di procedure per soddisfare le esigenze del progetto.

[Link] E-R (entità-relazioni): proposto da Chen nel 1976, è fondamentale per la modellazione dei
database permettendo di rappresentare concettualmente il mondo reale attraverso entità e relazioni.
-Il modello risulta semplice, ha costrutti E-R utilizzabili per la definizione di database relazionali.
-La modellazione E-R porta ad un diagramma E-R, che rappresenta graficamente entità e relazioni.

-Ogni entità rappresenta un concetto del mondo reale, che può essere un oggetto concreto o astratto,
come persone, possono essere considerate come gruppi omogenei di informazioni e vengono
identificate attraverso nomi univoci. (si rappresentano graficamente con rettangoli). Tipi :
[Link]à Forti: Non hanno bisogno di altre entità per essere identificate. (Paziente)
[Link]à Deboli: Hanno bisogno di un'altra entità per essere identificate. (Esame)
[Link]à Associative: Servono ad associare due o più entità in caso di relazioni complesse (molti a
molti)(N:N). Queste entità consentono di risolvere le associazioni multiple. Esempio(In
un'associazione tra Paziente ed Esame, l'entità Referto collega un esame a un paziente specifico).

-Istanza : rappresenta un singolo oggetto descritto da quell'entità. È l'equivalente di un singolo record


all'interno di un file. Esempio(L'entità Alunno comprende tutti gli studenti, mentre "Mario Rossi" è
un'istanza di quell'entità, identificata da attributi specifici come nome, cognome, classe e sezione.)
-Attributi : descrivono entità a cui sono associati. Un'istanza di un attributo è il suo valore specifico.
-Esempio completo(Entità: alunno , Attributi: cognome, nome, classe, sezione
Istanza: Mario Rossi: cognome = Rossi, nome = Mario, classe = V, sezione = 13))

-Tipi di attributi :
[Link]: comunemente chiamati chiavi e identificano univocamente un'istanza di un'entità.
[Link]: Descrivono caratteristiche non uniche di un'istanza, completando la sua descrizione.
[Link]: Attributo semplice con un solo valore per istanza (es. Cognome, Nome, Matricola).
[Link]: può avere più valori in un'istanza (es. Specializzazione, Materia, Lingua Parlata).
[Link] (Parziale): Può non esistere in alcune istanze (es. Telefono, Interesse).
[Link] (Totale): sempre presente (es. Codice Fiscale, Cognome, Data di Nascita).
[Link] (Statico): Valori non modificabili (es. Codice Fiscale, Nome).
[Link] (Dinamico): Valori che possono cambiare (es. Età, Indirizzo).
[Link]: Valore ottenuto tramite un algoritmo (es. Stipendio, Età).
[Link] (Univoco): Tutte le istanze hanno valori diversi (es. Codice Fiscale).
[Link] (Multivalore): Valori comuni a più istanze (es. Materie Insegnate, Lingue Parlate).
[Link]: Costituito da un insieme di componenti (es. Telefono, Indirizzo, Data).

-Dominio : l'insieme di tutti ii valori che quell'attributo può avere. Esempio( Numero, numeri naturali.)
Ogni attributo va assegnato a un dominio che ha le seguenti caratteristiche :
[Link] di Dato: interi, decimali, caratteri, date, valori logici.
[Link]: numero massimo di cifre o caratteri.
[Link]: limiti superiori e inferiori dei valori
[Link] Null: indicano informazioni mancanti.
[Link] di Default: valore predefinito se non specificato.

3
[Link]: restrizioni sui valori ammessi, verificabili durante l'inserimento. Possono essere : -Statici:
controlli al momento dell'inserimento (es. formato corretto).
-Dinamici: controlli periodici (es. scadenza di un prodotto).

[Link] E-R(Chiavi): Gli attributi chiave identificano univocamente le istanze di un'entità. Tipi :
[Link] Primaria:l'attributo o insieme di attributi scelto tra chiavi candidate per identificare
univocamente un'istanza.
[Link] Alternative: chiavi candidate non scelte come chiave primaria.
[Link] Composta: formata da più attributi per identificare un'entità.
[Link] Artificiale: un attributo numerico, generalmente auto-incrementale, utilizzato quando non ci
sono chiavi candidate adatte. Questo attributo è privo di significato proprio e serve per garantire
l'unicità (es. ID Alunno).

-Nello schema relazionale possono essere rappresentate in questi 2 modi :


-Impiegati (CodFiscale, Nome, Telefono) (con CodFiscale sottolineato).
-Impiegati (CodFiscale(pk), Nome, Telefono) (indicando (pk) per la chiave primaria).
pk(primary key)

-Nello schema grafico :

-Migrazione chiave primaria : La chiave primaria di un’entità debole è formata dall'insieme della
chiave primaria dell'entità forte e dalla chiave specifica dell'entità debole.

-Chiavi esterne : servono a stabilire connessioni tra entità diverse e a mantenere l'integrità
referenziale. Ogni relazione "1 a molti" deve essere supportata da una chiave esterna.
Si usa fk(foreign key).
-Esempi : Chiave primaria: ID_Alunno / Chiave esterna: id_Alunno (in minuscolo)
Nel caso di chiavi artificiali, il prefisso rimane invariato, mentre per chiavi primarie generiche è
comune usare il prefisso cod : Chiave primaria : Cliente / Chiave esterna : cod_Cliente.

-Nello schema relazionale, la chiave primaria è indicata come primo attributo e sottolineata, mentre
la chiave esterna è l'ultimo attributo e può avere la notazione (fk) :
-Impiegati(ID_Impiegato(pk), Cognome, Nome, …, id_Reparto(fk))
oppure
-Impiegati(ID_Impiegato, Cognome, Nome, …, id_Reparto*)

[Link] E-R (Relazioni): Una relazione (o associazione) rappresenta un'associazione tra una o più
entità e possono essere descritte utilizzando verbi che indicano l'interazione tra le entità coinvolte.

-Esempio :
-Possono essere classificate in base a :
-Grado: Numero di entità associate alla relazione.
-Relazione binaria: Associa due entità (es. Studente-Città)
-Relazione ternaria: Associa tre entità (es. Impiegato, Sede, Progetto)
-Relazione Ricorsiva: Coinvolge una sola entità.

Potrebbero piacerti anche