OsvaldoLaviosa ha scritto:
Per creare le relazioni tra tabelle devi avere corrispondenti campi ID che svolgono il ruolo di FK=ForeignKey=ChiaveEsterna.
La tabella Tour deve avere un campo IDPaese dal lato molti. Quindi relazione Paesi.IDPaese uno-a-molti Tours.IDPaese.
Un Tour ha molte Partenze...che forse sono legate anche agli Hotel. Penserei una tabella DettagliTours dove indichi queste cose. Quindi Tours uno-a-molti DettagliTours. Ovviamente tabella Hotels uno-a-molti DettagliTours.
Un Tour ha molti Clienti. Un Cliente può partecipare a molti Tours. Quindi Tours molti-a-molti Clienti da esplicitare con tabella di congiunzione Partecipanti.
Forse mancano le Località delle tappe intermedie...anche queste ce le vedrei in DettagliTours.
Questo a grandi linee. Se servono altri dettagli...devi fornirli.
Ciao Osvaldo, intanto grazie per la risposta.
Provo a spiegarti meglio la logica con un esempio:
- Ho un tour "Giro dell'Andalusia"
- Appartiene alla Paese "Spagna"
- Appartiene alla tipologia "Tour di gruppo" (che si alterna a "Tour privato")
- Durata "10 giorni"
- Ha date di partenza varie (3 e 15 gennaio, 10 e 22 febbraio, etc etc) tutto l'anno
- Il giro tocca diverse città: Valencia, Granda, Cordoba.
- Gli hotel dei pernottamenti nelle città possono essere 3 o 4 stelle.
- Il prezzo del viaggio a persona dipende dal numero di stelle dei pernottamenti, con relativi supplementi "uso singola", prezzo per letto extra, etc.
- il prezzo è 500 da Gennaio ad Aprile e da Ottobre a Dicembre, 600 da Maggio a Settembre (se scegli 3 stelle, aumentano entrambi nel pacchetto da 4 stelle)
- Il tour ha alcuni costi extra: obbligatori (voli domestici) e opzionali (escursioni varie).
Sulla base delle tue indicazioni ho provato a buttare giù uno schema di relazioni, considerato che :
Tabella Tour id_tour, titolo, id_paese, id_tipo, durata?, id_partenze, descrizione, itinerario
Tabella Paese id_paese, nome_paese
Tabella Hotel id_hotel, id_località, nome, stelle
ipotesi Tabella Partenze id_partenza, anno, mese, giorno, prezzo ipotesi
Tabella Località id_località, nome_località, id_paese
Tipologia Tour id_tipo_tipologia
cosi da estrarre tutti i dati richiesti relativi ad ogni tour.
Qui ti domando una cosa extra: come posso strutturare il form di inserimento di un nuovo tour?
E per ultima, per consentire di creare un preventivo, il cui nome cliente vorrei recuperarlo dal form di contatto sul sito
Tabella Clienti _id_cliente, nome, cognome, email, id_tour.
Pensi che cosi strutturati possano funzionare e avere una logica?
Grazie ancora