Utente(Id, Nome, Cognome, CodiceFiscale, DataNascita, TipoUtente, MatricolaStudente, IdentificativoPensione) TipoUtente = ‘Studente, Pensionato, Standard’ Fare un check sul campo:
- se TipoUtente = Studente allora MatricolaStudente != NULL
- se TipoUtente = Anziano allora IdentificativoPensione != NULL
TitoloViaggio(Id, IdUtente, IdTariffa, CodiceUnivoco, Tipo, DataEmissione, DataScadenza) Tipo = “Abbonamento” o “Biglietto”
Reclamo(Id, IdCorsaEffettiva, IdUtente, Testo, Data)
Validazione(Id, IdTitoloViaggio, IdCorsaEffettiva, Data)
CorsaEffettiva(Id, IdCorsaPianificata, IdAutista, IdMezzo, Data, OraPartenzaReale, OraArrivoReale)
Mezzo(Id, Targa, Tipo, Capienza, KmTotali, DataUltimaRevisione) Tipo = “Bus” o “Tram”
Manutenzione(Id, IdMezzo, Costo, DataInizio, DataFine, Descrizione, Stato) Stato = “Fatta” o “Iniziata”
Rifornimento(Id, IdMezzo, Data, Quantità, CostoTotale, KmAttuali) KmAttuali indica i chilometri del mezzo quando fa rifornimento, da questo ne possiamo tirare fuori i km al litro
Autista(Id, Nome, Cognome, DataAssunzione, DataScadenzaPatente)
Turno(Id, IdAutista, DataInizio, DataFine, TipoTurno)
TipoTurno (VARCHAR - es. “Lavoro”, “Riposo”, “Ferie”, “Malattia”)
Linea(Id, NomeDescrittivo) PercorsoLinea(Id, IdLinea, IdFermata, progressivo) Zona(Id, Nome) TariffaTratta(Id, IdZonaPartenza, IdZonaArrivo, Prezzo)
Deviazione(Id, Motivo, DataFine, DataInizio) PercorsoLinea(Id, IdDeviazione, IdFermata, progressivo)
TODO
- Deviazione
- CorsaPianificata
- Alcune cardinalità nelle relazioni
- Controllare se va bene
- Nello schema logico mancano le chiavi esterne
- Cercare/Inserire un dato sulla quale fare le analisi delle ridondanze (modificare eventuale schema ER/logico)
- Modificare almeno due query che che usino il dato dato ridondante
- Modificare le operazioni, per fare le analisi sui dati ridondati serve che più operazioni lavorino sulle tabelle con i dati ridondanti in modo da fare i confronti
- Capire se le stime sui volumi sono giusti
- Analisi delle ridondanze
- Creazione delle stime e dei calcoli
- Sistemare la relazione
- Analisi degli indici per il futuro
- Creazione delle stime e dai calcoli
- Sistemare la relazione
- Scrivere le query per la creazione degli indici
- Scrivere le query per la creazione del database
- Scrivere la normalizzazione secondo la guida di CFE
- Scrivere i trigger
- Scrivere i trigger per i vincoli
- Scrivere i trigger per il dato ridondante
- Scrivere le query per l’inserimento dei dati
- Scrivere le query per le varie operazioni definite
- Ultimare la relazione