Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    urgente: database!

    Ciau a tutti
    volevo chiedere se qualcuno di voi sapeva aiutarmi su un piccolo dubbio che ho su un progetto di basi di dati(che dovrò gestirlo poi con mysql e jdbc).
    Io devo gestire le piscine comunali di una città,dove in ognuna di esse si tengono dei corsi.
    Il prof ci ha dato però dei vincoli sulla gestione dei corsi perchè ci ha detto:"Lo stesso tipo di corso può essere svolto presso piscine diverse, eventualmente con modalità differenti . Ciascun corso è pertanto identificato dal nome dell'attività svolta, quali Aerobica, Acquagym, Corso di Sincronizzato o corso per Gestanti, e dal nome della Piscina presso cui tale corso si svolge. Per ciascun corso, svolto presso una certa piscina, è noto il costo, il numero massimo e minimo di partecipanti, in quali giorni della settimana si svolge ed a che ora. Si ipotizzi che presso ciascuna piscina ogni corso sia svolto una sola volta al giorno, ma più volte durante la settimana ."
    Le parti che ho sottolineato, non so come gestirle nello schema ER,in particolare la cardinalità.
    Spero possiate essermi di aiuto....GRAZIE

  2. #2
    Corso e Piscina hanno cardinalità n a m (un corso può essere fatto in una o più piscine e in una piscina possono essere fatti più corsi) l'attributi dell'associazione saranno il tipo di corso, le modalità e l'eventuale data ...
    L'ipotesi non ti serve a nulla nell'E/R ...
    Cmq cambia il nome della discussione, sei contro regolamento.

    EDIT: non avevo letto che i corsi potevano essere fatti in più piscine ...
    Experience is what you get when you don’t get what you want

  3. #3
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304

    Moderazione

    Nessuna discussione nel forum è urgente, ovvero tutte hanno la stessa urgenza.
    Leggere il regolamento, anche per conoscere le norme di partecipazione a quest'area, quelle di scrittura dei titoli e dei messaggi.


    Questo lo correggo io.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  4. #4
    Mi scuso innanzitutto!
    Comunque il punto è che è vero che un corso può essere svolte in più piscine, ma non è proprio cosi...Ti spiego meglio, le piscine possono svolgere lo stesso TIPO di Corso ad esempio AQUAGYM ma quello che cambia è la modalità con cui viene svolta da piscina in piscina: quindi è sbagliato dire che un determinato corso ad esempio con Id "C1" venga svolto in+piscine, perchè quello è univoco per una piscina,magari il tipo del corso (penso sia "AQUAGYM" viene fatto in+piscine ma è la modalità che cambia),quindi non è vero che il corso con Id C1 viene fatto in tutte le piscine, perchè non è cosi,avrà un codice diverso in un'altrà piscina anche se il tipo di corso è quello ma differisce la modalità...quindi la relazione tra CORSO e PISCINA è 1:1, da PISCINA e CORSO invece è 1:N.
    ...Per quanto riguarda invece la seconda parte,quella in cui "SI IPOTIZZA CHE PRESSO CIASCUNA PISCINA OGNI CORSO SIA SVOLTO UNA SOLA VOLTA AL GIORNO, MA PIU' VOLTE DURANTE LA SETTIMANA"...lo so che devo fare un controllo per impedire che il giorno in cui viene svolto sia lo stesso per quella determinata piscina e per quel determinato corso.Io avevo pensato alla fine di non mettere un campo di tipo DATE, ma un campo "giorno" in cui metto ad esempio "Lunedi" ecc...però il fatto sta di controllare che non siano inseriti 2 volte Lunedi per quel corso e per quella piscina....Come si fa?? uffi!

  5. #5
    Forse non mi sono spiegato ...
    Tu hai 2 entità : Piscina e Corso.
    Fra le due entità vi è una associazione di tipo molti a molti (quindi n a m)
    L'associazione ha degli attributi, quali la data e le modalità con cui il corso viene eseguito.
    Quindi posso affermare che uno stesso corso può essere eseguito in più piscine, perchè non cambia di volta in volta il corso, ma gli attributi dell'associazione.
    Ti posto un disegnino per spiegarmi meglio...
    Se provi a fare un'istanza, dello schema relazionale, puoi vedere che il discorso fila:
    Piscine ("Piscina 1","Piscina Olimpionica","...");
    Corsi ("Apnea","...");
    Associazione ("Piscina 1", "Apnea", 3/22/2008, "Il corso si terrà con queste modalità");
    Associazione è la tabella che viene creata per tradurre (in schema relazionale) l'associazione n a m dello schema E/R (i primi 2 attributi sono chiave primaria e chiavi esterne)...
    In questo modo tu riduci, anche, la ridondanza nel tuo db ...
    ... cosa che non puoi fare se ti limiti a creare un nuovo corso, ogni volta che cambiano le modalità di esecuzione.
    Immagini allegate Immagini allegate
    Experience is what you get when you don’t get what you want

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.