ePerTutti
Appunti, Tesina di, appunto informatica

TESTO DELL’ESERCIZIO DI LABORATORIO

Scrivere la parola
Seleziona una categoria

TESTO DELL’ESERCIZIO DI LABORATORIO

Gestire il sistema di prenotazione di un teatro la cui struttura è basata su rappresentazione annuali, e ogni rappresentazione è ripetuta per un numero diverso di giorni ma mai più di una volta al giorno.

Il teatro è formato da mille posti e i posti sono divisi in venticinque file ognuna da quaranta poltrone (ogni fila si indica con una lettera e ogni poltrona con un numero).

Ogni prenotazione può essere relativa ad un numero di posti variabile.

Per simulare l’esercizio definire tre file da quattro poltrone l’una.

Il sistema deve.            Gestire l’introduzione e la cancellazione di uno spettacolo,

                                   introdurre cancellare e modificare una prenotazione,

                                   gestire la prenotazione.

Bisogna inoltre avere.               elenco dei prenotati ad uno spettacolo,

                                               posti disponibili ad una rappresentazione.



FORNIRE

*Schema concettuale con chiavi e attributi,

*Descrizione degli attributi con indicazioni di chiavi principali a corrispondenze

*Normalizzazione

*Schema relazionale

*Allegare la descrizione delle tabelle

*Descrizione delle maschere

*Per ogni query indicare a cosa serve e produrre il codice in SQL sulla documentazione

DESCRIZIONE DELLE ENTITA’

TABELLA DEGLI SPETTACOLI

 

ENTITA’

TIPO

DESCRIZIONE

CodSpett

Testo

Codice dello spettacolo più precisamente è la chiave primaria della tabella spettacoli

DataInizio

Data/ora

Data del primo giorno di rappresentazione dello spettacolo

DataFine

Data/ora

Data dell’ultimo giorno della rappresentazione dello spettacolo

Titolo

Testo

Titolo dello spettacolo

TABELLA DEI POSTI

ENTITA’

TIPO

DESCRIZIONE

Fila

Testo

Fila del posto è la una delle chiavi primarie della tabella posti

Posto

Numerico

Numero del posto è una delle chiavi primarie della tabella posti

Data

Data/ora

Data della prenotazione, è una delle chiavi primarie della tabella posti

Prenotato

Si/no

Dichiara se il posto è stato prenotato o meno

CodSpett

Testo

Riferito alla tabella spettacoli, serve per il collegamento e nella tabella posti è una chiave straniera

CodicePrenotazione

Contatore

Riferito alla tabella prenotazioni, serve per il collegamento e nella tabella posti è una chiave straniera.

TABELLA PRENOTAZIONI

 

ENTITA’

TIPO

DESCRIZIONE

CodicePrenotazione

Contatore

E’ la chiave primaria e registra il codice della prenotazione

ato

Si/no

Dichiara se la prenotazione è stata pagata anticipatamente

Nominativo

Esto

Comprende il nome e il cognome del cliente

Tel

Testo

Recapito telefonico del cliente

 

NORMALIZZAZIONE

SPETTACOLI

Cod Spett

 
                                                           Data Inizio

                                                           Data Fine

                                                           Titolo

La normalizzazione è già in terza forma normale perché Data Inizio,Data Fine e Titolo dipendono tutti e tre direttamente dall’unica chiave, cioè Cod Spett, nel senso che:

            Il titolo dello spettacolo dipende da un codice che gli viene assegnato

            La data dell’inizio dello spettacolo dipende dal codice che caratterizza lo spettacolo

            La data della fine dello spettacolo dipende dal codice che lo caratterizza.

POSTI

Fila

Posto

Data

 
                                                          

                                                           Prenotato



La normalizzazione è in terza forma normale perché l’entità prenotato dipende direttamente da una fila in cui è caratterizzato un posto e dalla data della prenotazione

PRENOTAZIONI

Codice Prenotazioni

 
                                                           ato

                                                           Nominativo

                                                           Tel

La normalizzazione è in terza forma normale, le entità dipendono direttamente dal codice della prenotazione nel senso che.

            Il nominativo del cliente è identificato da un codice di prenotazione

            Il numero di telefono di un cliente dipende dal codice che riconosce il cliente

            L’opzione se la prenotazione è stata pagata o meno si riconosce .dal codice della prenotazione.

ESEMPIO

Data inizio

Data fine

Titolo

Codice spett

Nominativo

01/10/01

31/10/01

Biancaneve

0001B

Pinco Pallino

01/10/01

31/10/01

Biancaneve

0001B

Pinco Pallino

01/10/01

31/10/01

Biancaneve

0001B

Pinco Pallino

01/10/01

31/10/01

Biancaneve

0001B

Tizio

11/11/01

23/12/01

Topolino

0012C

Pinco Pallino

11/11/01

23/12/01

Topolino

0012C

Verdi

11/11/01

23/12/01

Topolino

0012C

Verdi

Tel

Codice Prenotazione

ato

Fila

Posto

Data

Prenotato

0145/236584

00001

A

1

11/10/01

0145/236584

00001

A

2

11/10/01

0145/236584

00001

A




3

11/10/01

SI

0126/589481

01251

No

J

25

20/11/01

0145/236584

001546

No

F

40

23/11/01

0258/789654

01590

G

37

01/12/01

0258/789654

01590

SI

G

38

01/12/01

SCHEMA RELAZIONALE


SPIEGAZIONE DELLE RELAZIONI

Tra spettacoli e posti si ha una relazione 1 a N perché:

            A uno spettacolo solo ad esempio “Biancaneve” corrispondono mille posti.

            Mille posti sono disponibili per una sola rappresentazione come “Biancaneve”

Tra posti e prenotazione si ha una relazione N a 1 perché.

            A un posto corrisponde una sola prenotazione

            A una sola prenotazione possono essere riferiti più posti.

DESCRIZIONE DELLE TABELLE

TABELLA SPETACOLI

La tabella spettacoli serve per contenere le informazioni relative agli spettacoli che si svolgono nel corso di un anno, ogni spettacolo differente è caratterizzato da un proprio codice e da una propria durata.

TABELLA POSTI

 

La tabella posti è legata a quella degli spettacoli e delle prenotazione tramite delle chiavi straniere, definisce il posto prenotato per un determinato giorno e lo collega ad un determinato spettacolo ed ad una determinata persona.

TABELLA PRENOTAZIONI

 

La tabella prenotazioni riconosce la prenotazione di un determinato spettatore, riconosciuto da un suo codice e completo di informazioni.

DESCRIZIONE DELLE MASCHERE

MASCHERA SPETTACOLI

 

La maschera degli spettacoli registra il codice dello spettacolo munito di informazioni come il titolo dell’opera, la data di inizio e di fine della rappresentazione della stessa.

MASCHERA DEI POSTI

 

La maschera dei posti registra la fila in cui è situato il posto, il numero dello stesso, la data di prenotazione e se esso è stato prenotato o meno.

MASCHERA DELLE PRENOTAZIONI

 

Inserisce il codice della prenotazione con il nominativo dello spettatore, il suo recapito telefonico e se ha pagato anticipatamente o meno la prenotazione.

DESCRIZIONE DELLE QUERY

1 QUERY DEI POSTI LIBERI DI UN DETERMINATO GIORNO

 

La query serve per visualizzare tutti i posti non ancora prenotati in un determinato giorno.

L’utente deve inserire all’inizio dell’applicazione la data di cui si desidera sapere o meno la disponibilità dei posti.

2 POSTI OCCUPATI

La query serve per visualizzare tutti i posti che sono stati occupati.

3 PRENOTAZIONI DA PAGARE

 

La query visualizza tutte le prenotazioni che non sono state pagate anticipatamente da un determinato cliente.

4 POSTI PRENOTATI DA UN CLIENTE

 

La query visualizza il numero di posti che sono stati prenotati da un determinato cliente.

5 PRENOTAZIONI DI UN CLIENTE

 

La query indica il numero di prenotazioni fatte presso il teatro, durante un anno da un singolo cliente.

6CLIENTI & RECAPITO TELEFONICO

 

La query visualizza il nominativo del cliente e il suo recapito telefonico.

CODICE SQL

1 QUERY DEI POSTI LIBERI DI UN DETERMINATO GIORNO

SELECT Posti.Fila, Posti.Posto, Posti.Data

FROM Posti

WHERE (((Posti.Data)=[INSERISCI DATA]) AND ((Posti.Prenotato)=False));

 

 

2 QUERY DEI POSTI OCCUPATI

 

SELECT Prenotazioni.[Codice Prenotazione], Prenotazioni.Nominativo, Posti.Fila, Posti.Data, Posti.Posto

FROM Prenotazioni INNER JOIN Posti ON Prenotazioni.[Codice Prenotazione] = Posti.CodicePrenotazione

WHERE (((Posti.Prenotato)=True));

3 QUERY DELLE PRENOTAZIONI DA PAGARE

 

SELECT Prenotazioni.[Codice Prenotazione], Prenotazioni.Nominativo

FROM Prenotazioni

WHERE (((Prenotazioni.ato)=False))

ORDER BY Prenotazioni.[Codice Prenotazione];

4 POSTI PRENOTATI DA UN CLIENTE

SELECT Prenotazioni.Nominativo, Posti.CodicePrenotazione, Count(Posti.Prenotato) AS ConteggioDiPrenotato, Posti.Data

FROM Prenotazioni INNER JOIN Posti ON Prenotazioni.[Codice Prenotazione] = Posti.CodicePrenotazione

GROUP BY Prenotazioni.Nominativo, Posti.CodicePrenotazione, Posti.Data

HAVING (((Posti.Data)=[INSERISCI DATA]))

ORDER BY Prenotazioni.Nominativo;

5 PRENOTAZIONI DI UN CLIENTE

 

SELECT Prenotazioni.[Codice Prenotazione], Prenotazioni.Nominativo, Count(Posti.CodicePrenotazione) AS ConteggioDiCodicePrenotazione

FROM Prenotazioni INNER JOIN Posti ON Prenotazioni.[Codice Prenotazione] = Posti.CodicePrenotazione

GROUP BY Prenotazioni.[Codice Prenotazione], Prenotazioni.Nominativo

ORDER BY Prenotazioni.[Codice Prenotazione];

6 CLIENTI E RECAPITO TELEFONICO

 

SELECT Prenotazioni.[Codice Prenotazione], Prenotazioni.Nominativo, Prenotazioni.Tel

FROM Prenotazioni

GROUP BY Prenotazioni.[Codice Prenotazione], Prenotazioni.Nominativo, Prenotazioni.Tel

ORDER BY Prenotazioni.[Codice Prenotazione];






Privacy

© ePerTutti.com : tutti i diritti riservati
:::::
Condizioni Generali - Invia - Contatta