GESTIONE ASSICURAZIONI AUTO

Documenti analoghi
Il sistema informativo deve essere di tipo centralizzato e accessibile mediante un computer server installato nella rete locale dell albergo.

I database. Introduzione alla teoria delle basi di dati

Traduzione dello schema E-R in modello logico relazionale

Compito Sistemi Informativi LA. Tempo concesso : 90 minuti 28 Giugno 05 Nome: Cognome: Matricola: Esercizio 1

V. Moriggia Modelli di Base Dati. Modelli di Base Dati. a.a. 2001/

ACCESS. Database: archivio elettronico, dotato di un programma di interfaccia che facilita la registrazione e la ricerca dei dati.

Ingegneria del Software

CAPITOLO V. DATABASE: Il modello relazionale

Foglio elettronico e Banche dati e per la Pubblica Amministrazione

SQL Server Architettura Client-Server. SQL Server Introduzione all uso di SQL Server Dutto Riccardo.

SQL. Laboratorio di Progettazione di Basi di Dati (CdS in Informatica e TPS)

Basi di Dati. Laboratorio Ing. G. Laboccetta Dott.ssa. V. Policicchio. Corso di Laurea in Informatica. a.a

Esempio di database relazionale con l utilizzo del prodotto MySQL

Progetto: Database per assicurazione rc auto

Basi di Dati Relazionali

INTRODUZIONE ALLE BASI DATI RELAZIONALI

SQL SQL. Definizione dei dati. Domini. Esistono 6 domini elementari:

BASI DATI INFORMATICA

ALLEGATO: ISTRUZIONI PER L OPERATORE DI SEDE PER ACQUISIRE LE DOMANDE TELEMATICHE DI RICONGIUNZIONE

ESERCIZIO 1 (12 punti) Dato il seguente schema relazionale, che modella le informazioni relative ad una Software (SW) House:

Procedura operativa per la gestione della funzione di formazione classi prime

elicaweb manuali - logistica magazzino - pagina 1 di 5

Lezione 3 Progettazione di siti

Normalizzazione. Definizione

UNIVERSITÀ DEGLI STUDI DELL INSUBRIA

Si considerino le seguenti specifiche per la realizzazione di un sito web per la gestione di abbonamenti a riviste di vario genere..

Lezione 4. Sommario. L artimetica binaria: I numeri relativi e frazionari. I numeri relativi I numeri frazionari

DATABASE PER IL WEB. Programmazione Web 1

Basi di Dati Corso di Laura in Informatica Umanistica

QUOTAZIONI USATO DEALER

Moduli di misura per corrente ma per corrente ma

Vincoli di Integrità

Autodesk Map parte I digitalizzazione e importazione dati

Modello da inviare all'autorità regionale competente

Università degli Studi di Milano. Esercizi Corso SIT. Basi di dati

liceo B. Russell PROGRAMMAZIONE INDIRIZZO: SCIENTIFICO SCIENZE APPLICATE TRIENNIO: TERZA DISCIPLINA: INFORMATICA

Manuale Operativo Gestione dei Ticket di assistenza 15 Marzo 2016

Alessandra Raffaetà. Schemi a oggetti -> Schemi relazionali

ATTI COSTITUTIVI DI S.R.L. DI START-UP INNOVATIVE GUIDA RAPIDA

REGISTRO DELLE IMPRESE

La in verifica forma teoria normale della normalizzazione fornisce comunque uno strumento di già

Unità Didattica 3 Linguaggio C. Generalità sulle Funzioni. Variabili locali e globali. Passaggio di parametri per valore.

VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole.

Corso sul linguaggio SQL

SOLUZIONE AL TEMA DI INFORMATICA (PROGETTO ABACUS)

Progettazione logica

La disposizione estetica della lettera commerciale

Importazione dati. e/fiscali Spesometro - Rel con gestionale e/satto. Gestionale e/satto

L interfaccia a riga di comando di MySql

Fast Patch 0336 Predisposizione operazioni superiori a euro Release 7.0

Esame di Stato Istituto Tecnico Industriale Soluzione della Seconda Prova Indirizzo: INFORMATICA Tema: INFORMATICA Anno Scolastico:

Domini elementari, 2. Basi di dati. Domini elementari, 4. Domini elementari, 3. Domini definiti dagli utenti. Domini elementari, 5

1 DESCRIZIONE DELLE FUNZIONI REGISTRAZIONE UTENZE INTERNET Caricamento utente internet (data entry)... 3

Corso di Informatica (Basi di Dati)

ITCS Erasmo da Rotterdam. Anno Scolastico 2014/2015. CLASSE 4^ M Costruzioni, ambiente e territorio

GRIGLIA DI CORREZIONE 2012 Matematica Classe II Scuola Primaria

Files in C++ Fondamenti di Informatica. R. Basili. a.a

Capitolo 9. Esercizio 9.1. Esercizio 9.2

Sessione ordinaria 2005 Seconda prova scritta M070 - ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE

Quadro riassuntivo di geometria analitica

INFORMATICA PER L IMPRESA (Docente Prof. Alfredo Garro) ESERCIZIO 3

Definizione di domini

ISCRIZIONI ON LINE Registrazione delle famiglie. Direzione generale per gli studi, la statistica e i sistemi informativi

DESCRIZIONE CREAZIONE APP Si suddivide in 4 fasi di lavoro: 1. PIANIFICAZIONE; 2. PROGETTAZIONE; 3. SVILUPPO; 4. DISTRIBUZIONE.

Algebra di Boole Algebra di Boole

1. Schema concettuale della base di dati Lo schema concettuale (o statico) è uno dei due schemi del progetto concettuale di un sistema informativo.

Accreditamento al portale di Roma Capitale

Protocollo dei saperi imprescindibili Ordine di scuola: professionale

PROGETTAZIONE DISCIPLINARE MATEMATICA classe 2^

Contraente: AICS- Comitato Provinciale di Lucca con sede legale in Via S. Nicolao, LUCCA

Manuale utente Soggetto Promotore Erogatore Politiche Attive

DUE GRUPPI DI COMANDI

Un DataBase SQL per la Henry Books

SQL Laboratorio di Basi di Dati a.a. 2002/2003

Specifiche tecniche e di formato Presentazione comunicazione unica per la nascita d impresa

ARCHITETTURA FISICA DEL SISTEMA

Specifiche tecniche per la trasmissione telematica dei dati relativi alle forniture di documenti fiscali

Lezione del modulo 7 SQL e database del giorno 04/05/2006 tot. ore 3. Lo Standard SQL

Database per la gestione delle ferrovie dello stato. I treni gestiti sono identificati da un numero. Su ciascun treno sono specificate le classi per

Problemi di scelta ESEMPI

INDICI. Prevediamo di effettuare spesso interrogazioni simili alle seguenti:

SQL: concetti base SQL. Definizione dei dati in SQL. SQL: "storia"

ATTENZIONE! Per completare la procedura di accesso è indispensabile eseguire la sincronizzazione del Token (vedi punto 1.10).

2011 Politecnico di Torino 1

Basi di Dati prof. Letizia Tanca

Introduzione a MySQL

ELENCHI DEL PERSONALE

Università degli studi di Urbino C.d.L : Informatica Applicata Anno Accademico : 2007/ : FastResearch :. Gestionale per Negozio Informatico

Note_Batch_Application 04/02/2011

Richiesta di contributo per il sostegno alla locazione di cui all art. 11, L. 431/98 e s.m.i.

INDICE. PULSE Manuale Operativo Pag. 1

Il file system. Le caratteristiche di file, direttorio e partizione sono del tutto indipendenti dalla natura e dal tipo di dispositivo utilizzato.

DEFINITE LE MODALITÀ DI INVIO DELLE SPESE SANITARIE PER MEDICI E ODONTOIATRI PER IL MOD. 730 PRECOMPILATO

Modulo 2 Data Base - Modello Relazionale

Transcript:

GESTIONE ASSICURAZIONI AUTO S i v o g l i o n o g e s t i r e i d a t i d i i n t e r e s s e d e l l e c o m p a g n i e d i a s s i c u r a z i o n i r a m o R C A. N e l d a t a b a s e s i d e v o n o o r g a n i z z a r e i d a t i r e l a t i v i a l l e a u t o, a i p r o p r i e t a r i d e l l e a u t o, a l l e a s s i c u r a z i o n i, a g l i i n c i d e n t i e d a l l a q u a n t i f i c a z i o n e d e i d a n n i r i p o r t a t i i n o g n i s i n i s t r o. N e l d a t a b a s e, p e r t a n t o, s i d e v o n o g e s t i r e l e s e g u e n t i t a b e l l e : p r o p r i e t a r i c o n d a t i a n a g r a f i c i ( n o m e, c o g n o m e, s e s s o, i n d i r i z z o, r e s i d e n z a, c o d i c e f i s c a l e, t e l e f o n o ) ; a u t o c o n t a r g a, m o d e l l o, m a r c a, c i l i n d r a t a, p o t e n z a, a l i m e n t a z i o n e, p r o p r i e t a r i o, c o m p a g n i a a s s i c u r a z i o n e ; a s s i c u r a z i o n e c o n d e s c r i z i o n e e s e d e ; s i n i s t r o c o n l o c a l i t à i n c u i è a v v e n u t o l ' i n c i d e n t e e d a t a ; L ' e s e r c i z i o è u n a r i e l a b o r a z i o n e d i u n e s e r c i z i o p r o p o s t o i n h t t p : / / w w w. d i. u n i p i. i t / ~ l e o n i / B D e S I / E 2. E s e r c i z i % 2 0 d i % 2 0 S Q L. p d f Considerato il problema proposto si realizzi: uno schema concettuale della base di dati; uno schema logico della base di dati; la definizione delle relazioni della base di dati in linguaggio SQL. Analisi dei dati Le entità che possono essere individuate per risolvere il problema sono : ENTITA Proprietario Auto Assicurazione Marca Sinistro contiene l elenco dei proprietari delle auto assicurate; contiene l elenco delle auto assicurate; contiene l elenco delle assicurazioni; contiene l'elenco delle marche delle auto; contiene l'elenco di tutti i sinistri; Gli attributi, per ciascuna entità, individuati per risolvere il problema sono : ATTRIBUTI Tipo di entità Proprietario Auto Assicurazione Marca Sinistro Sistema informativo Gestione Assicurazioni auto Attributi idproprietario, nome, cognome, sesso, indirizzo, residenza, codice fiscale, telefono targa, modello, marca, cilindrata, potenza, alimentazione, proprietario, assicurazione; idassicurazione, descrizione assicurazione, sede; idmarca, descrizione marca; idsinistro, località, data; Esempio di Progettazione di un database a cura del Prof. Salvatore DE GIORGI Pag. 1

Tra l entità Proprietario e l entità Auto esiste un associazione uno-a-molti in quanto un proprietario può avere una o più auto mentre un'auto può avere solo un proprietario. Tra l entità Assicurazione e l entità Auto esiste un associazione uno-a-molti in quanto un'assicurazione può avere più auto assicurate mentre un'auto può essere assicurata da una sola assicurazione. Tra l'entità Marca e l'entità Auto esiste un'associazione uno-a-molti in quanto una marca può essere la marca di più automobili mentre un'automobile può essere di una sola marca. Tra l'entità Auto e l'entità Sinistro esiste un'associazione molti-a-molti in quanto un'auto può essere coinvolta in più incidenti ed in un incidente possono essere coinvolte più auto. Schema concettuale della base di dati Le relazioni tra i tipi di entità nel modello dei dati sono individuate nel seguente Modello Entità/Associazioni (E/R) : ASSICURAZIONE PROPRIETARIO AUTO MARCA Autosinistro ImportoDanno SINISTRO Esempio di Progettazione di un database a cura del Prof. Salvatore DE GIORGI Pag. 2

Nel modello E/R, inoltre, sono stati indicati, oltre ai nomi delle entità, l opzionalità od obbligatorietà delle associazioni (indicate rispettivamente con linea tratteggiata o continua). Il modello viene verificato utilizzando le regole di lettura : ogni proprietario deve possedere una o più auto, ogni auto deve appartenere ad un solo proprietario. una marca può essere abbinata ad una o più automobili, un'auto deve essere abbinata ad una marca. un'assicurazione deve assicurare una o più auto, un'auto deve essere assicurata con una sola assicurazione. un'auto può essere coinvolta in uno o più incidenti, in un incidente possono essere coinvolte una o più auto Schema logico della base di dati Come tipo di schema logico, dovendo poi realizzarlo nello standard SQL, si sceglie di utilizzare quello relazionale. Applicando le regole di corrispondenza tra il modello E/R ed il modello Relazionale si passa dal precedente schema concettuale al modello logico che viene descritto sia nella forma testuale che in quella grafica. Rappresentazione testuale dello schema logico : Nella rappresentazione testuale si elencano le tabelle (indicando per ciascuna i campi) che rappresentano le entità dello schema concettuale e le tabelle che rappresentano le eventuali relazioni molti-a-molti, introducendo, inoltre, le chiave esterne per rappresentare le associazioni (le chiavi primarie sono sottolineate, le chiavi esterne sono in corsivo). Nello schema E/R precedente si può osservare che esiste una relazione molti-amolti (N:N) tra i tipi di entità Auto e Sinistro. Applicando il processo di normalizzazione (definito dalle forme normali) si deve inserire una entità ausiliaria (AutoSinistro) che trasforma la relazione molti-a-molti in due relazioni : uno-a-molti (1:N) tra Auto e Autosisistro, e molti-a-uno (N:1) tra Autosinistro e Sinistro Si definiscono, innanzitutto, le tabelle che rappresentano le entità dello schema concettuale e successivamente si definiscono le tabelle che rappresentano le associazioni. Le seguenti tabelle rappresentano le entità : Esempio di Progettazione di un database a cura del Prof. Salvatore DE GIORGI Pag. 3

t a b p r o p r i e t a r i ( i d p r o p r i e t a r i o, n o m e, c o g n o m e, e s s o, i n d i r i z z o, r e s i d e n z a, c o d f i s c a l e, t e l e f o n o ) t a b a u t o ( t a r g a, m o d e l l o, k s m a r c a, c i l i n d r a t a, p o t e n z a, a l i m e n t a z i o n e, k s p r o p r i e t a r i o, k s a s s i c u r a z i o n e ) t a b a s s i c u r a z i o n i ( i d a s s i c u r a z i o n e, a s s i c u r a z i o n e, s e d e ) t a b m a r c a ( i d m a r c a, m a r c a ) t a b s i n i s t r o ( i d s i n i s t r o, l o c a l i t a, d a t a _ s i n i s t r o ) L a s e g u e n t e t a b e l l a r a p p r e s e n t a l a s s o c i a z i o n e m o l t i - a - m o l t i : t a b a u t o s i n i s t r o ( k s s i n i s t r o, k s t a r g a, i m p o r t o _ d a n n o ) Per realizzare l associazione uno-a-molti fra l entità Proprietario e l entità Auto si introduce, fra gli attributi dell entità a molti (Auto), la chiave esterna ksproprietario associata alla chiave primaria idproprietario dell entità a uno (Proprietario). Per realizzare l associazione uno-a-molti fra l entità Assicurazione e l entità Auto si introduce, fra gli attributi dell entità a molti (Auto), la chiave esterna ksassicurazione associata alla chiave primaria idassicurazione dell entità a uno (Assicurazione). Per realizzare l associazione uno-a-molti fra l entità Marca e l entità Auto si introduce, fra gli attributi dell entità a molti (Auto), la chiave esterna ksmarca associata alla chiave primaria idmarca dell entità a uno (Marca). Per realizzare l associazione molti-a-molti fra l entità Auto e l entità Sinistro si introduce una terza entità AutoSinistro, che, oltre ad attributi propri dell associazione (ImportoDanno) ha, come attributi, la chiave esterna ksinistro associata alla chiave primaria idsinistro dell entità Sinistro e la chiave esterna kstarga associata alla chiave primaria targa dell entità Auto. Rappresentazione grafica dello schema logico : La rappresentazione grafica dello schema logico relativo al sistema informativo per la gestione delle Assicurazioni Auto è il seguente : Esempio di Progettazione di un database a cura del Prof. Salvatore DE GIORGI Pag. 4

Definizione delle Tabelle Nel definire le tabelle e la struttura delle stesse, è consigliabile elencarle partendo dalle tabelle che non presentano chiavi esterne. In successione si definiscono le tabelle le cui chiavi primarie sono utilizzate da altre tabelle come chiavi esterne. Nel prospetto seguente, per es., si definiscono prima le tabelle tabproprietari, tabassicurazioni, tabmarca e tabsinistro, quindi la tabella tabauto (che ha fra gli attributi tre campi definiti come chiavi esterne alle tabelle taproprietari, tabassicurazioni e tabmarca), ed infine la tabella tabautosinistro in quanto quest ultima ha, fra gli attributi, un campo definito come chiave esterna alla tabella tabauto ed un campo definito come chiave esterna alla tabella tabsinistro (l insieme di questi due campi formano la chiave primaria). Tabella Nome campo Chiave Tipo dati Dim. Dec. Null Descrizione tabproprietari idproprietario Primaria Numerico 10 Autoincremento nome Carattere 20 cognome Carattere 20 sesso Carattere 1 indirizzo Carattere 30 residenza Carattere 30 codfiscale Carattere 16 Vincoli: valori unici telefono Carattere 15 tabassicurazioni idassicurazione Primaria Numerico 5 Autoincremento assicurazione Carattere 30 Vincoli: valori unici sede Carattere 30 tabmarca idmarca Primaria Numerico 5 Autoincremento marca Carattere 30 Vincoli: valori unici tabsinistro idsinistro Primaria Numerico 10 Autoincremento localita_sinistro Carattere 30 data_sinistro Date 10 tabauto targa Primaria Carattere 10 modello Carattere 30 ksmarca Esterna Numerico 5 Integrità referenziale con idmarca della tabella tabmarca cilindrata Carattere 5 potenza Carattere 5 alimentazione Carattere 3 ksproprietario Esterna Numerico 10 Integrità referenziale con idproprietario della tabella tabproprietari ksassicurazione Esterna Numerico 5 Integrità referenziale con idassicurazione della tabella tabassicurazioni tabautosinistro kssinistro Primaria Numerico 10 Integrità referenziale con idsinistro della tabella tabsinistro kstarga Primaria Carattere 10 Integrità referenziale con targa della tabella tabauto importo_danno Numerico 10 2 Esempio di Progettazione di un database a cura del Prof. Salvatore DE GIORGI Pag. 5

Definizione delle relazioni della base di dati in SQL Lo schema logico relazionale precedente (tabelle, relazione ed applicazione dei vincoli di integrità dei dati e referenziale) può essere creato con le seguenti istruzioni SQL (proposte in versione per MySQL). MySQL CREATE TABLE tabproprietari ( idproprietario int(10) unsigned NOT NULL AUTO_INCREMENT, nome char(20) NOT NULL, cognome char(20) NOT NULL, sesso char(1) DEFAULT 'M', indirizzo char(30) residenza char(30) codfiscale char(16) telefono char(15) PRIMARY KEY (idproprietario), UNIQUE KEY codfiscale (codfiscale) CREATE TABLE tabassicurazioni ( idassicurazione smallint(5) unsigned NOT NULL AUTO_INCREMENT, assicurazione char(30) NOT NULL sede char(30) NOT NULL, PRIMARY KEY (idassicurazione) CREATE TABLE tabmarca ( idmarca smallint(5) unsigned NOT NULL AUTO_INCREMENT, marca char(30) NOT NULL, PRIMARY KEY (idmarca) CREATE TABLE tabauto ( targa char(10) NOT NULL, modello char(30), ksmarca smallint(5) unsigned NOT NULL, cilindrata char(5), potenza char(5), alimentazione char(3) NOT NULL, ksproprietario int(10) unsigned NOT NULL, ksassicurazione smallint(5) unsigned NOT NULL, PRIMARY KEY (targa) CREATE TABLE tabsinistro ( idsinistro int(10) unsigned NOT NULL AUTO_INCREMENT, localita_sinistro char(30) NOT NULL, data_sinistro date NOT NULL, PRIMARY KEY (idsinistro) CREATE TABLE ttabautosinistro ( kssinistro int(10) unsigned NOT NULL, kstarga char(10) NOT NULL, importo_danno decimal(10,2) NOT NULL, PRIMARY KEY (kssinistro,kstarga) Nota : le istruzioni proposte per MySQL sono relative all uso di tabelle tipo MyISAM che non supportano l'integrità referenziale definita con FOREIGN KEY. Il tipo di tabella InnoDB, invece, supporta la FOREIGN KEY similmente ad ACCESS. Per la differenza tra le tabelle di tipo MyISAM e InnoDB consultare : https://www.mrwebmaster.it/mysql/differenza-tabelle-tipo-myisam-innodb_7088.html Esempio di Progettazione di un database a cura del Prof. Salvatore DE GIORGI Pag. 6