Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12

Discussione: Problema Modello E-R

  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2011
    Messaggi
    9

    Problema Modello E-R

    Ragazzi ho bisogno di risolvere un problema. Devo creare un database in cui ho un'entità "concorsi" ogni concorso ha come attributo "categoria" che può essere B,C e D. Per i concorsi di categorie B e D mi occorre sapere solo la loro area di interesse mentre con i concorsi di categoria C ho bisogno di conoscere solo la loro area economica e il numero di posti disponibili. Ora creo una relazione che associa a concorsi un'entità "categoria" inserendo come attributi "area economica E "area di interesse" inserendo valori nulli laddove i valori non sono previsti? Oppure? Come potrei rimediare? P.S Sono un neofita. Ho bisogno di una mano, non prendetevela se ai vostri occhi questa sembra una stupidaggine!

  2. #2

    Re: Problema Modello E-R

    Originariamente inviato da TARAS88
    Sono un neofita. Ho bisogno di una mano, non prendetevela se ai vostri occhi questa sembra una stupidaggine!
    Non è una stupidaggine. E' un problema che si ha spesso nella progettazione di un db relazionale. Ed è uno dei motivi per cui molti programmatori esperti (che però non hanno mai imparato bene il modello relazionale) passano a db non relazionali, tipo MongoDB, senza sapere che si stanno per cacciare in guai ancora più grandi.


    Originariamente inviato da TARAS88
    . Ora creo una relazione che associa a concorsi un'entità "categoria" inserendo come attributi "area economica E "area di interesse" inserendo valori nulli laddove i valori non sono previsti?
    Certo, questa è una soluzione. Un'altra soluzione è creare due tabelle diverse, una per le categorie B e C e l'altra per la D. Un'altra soluzione ancora è creare una tabella categorie, più una tabella "proprieta", con due campi: nome_proprieta e valore_proprieta. Tutte le soluzioni hanno dei problemi, ma elencarteli è abbastanza lungo, abbi pazienza...
    STK/Unit: Unit Test framework per MariaDB
    http://stk.wikidot.com/stk-unit

  3. #3

    soluzione

    potresti creare l'entità concorsi e l'entità categoria collegarle con una relazione categoria di concorso (il rombo) e nell'entità categoria mettere come attributi b,c e d e come sottoattributo di b area di interesse mentre come sottoattributi di c e d area economica e posti disponibili ovviamente la cardinalità tra concorsi e categoria deve essere di 1 a n perchè per ogni concorso ci possono essere piu categorie...

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2011
    Messaggi
    9
    quando parli di sotto attributo parli di attributi composti?? la relazione concorsi-categoria ha cardinalità 1:N, ma la relazione categoria-concorsi ha cardinalità 1:1 o sbaglio? Ad una categoria corrisponde solo un concorso...

  5. #5
    premetto che sono alquanto ignorante in materia, ma non si potrebbe fare una cosa del genere?

    Ho un entità "concorsi" che la relaziono a "categoria" relazione 1:1 (un concorso può appartenere ad una sola categoria), mentre è 1:N se la guardi nell'altro senso(più concorsi possono appartenere alla stessa categoria). La categoria è una generalizzazione di B, C e D
    ognuno dei quali ha i propri attributi.

    Può funzionare? Anche io mi sto approcciando ai DB relazionali per la prima volta e mi interessa sapere

  6. #6
    corretto. ma qui la cosa è un po' più complicata perché le singole categorie hanno attributi diversi (colonne diverse). se gli attributi in totale sono pochi, la cosa più sensata (bisogna pur sempre restare con i piedi per terra) è inserirli tutti in tabella e poi trattare solo quelli significativi per quel particolare tipo di categoria

  7. #7
    Originariamente inviato da TARAS88
    quando parli di sotto attributo parli di attributi composti?? la relazione concorsi-categoria ha cardinalità 1:N, ma la relazione categoria-concorsi ha cardinalità 1:1 o sbaglio? Ad una categoria corrisponde solo un concorso...
    no parlo di sottoattributo chenneso l'entità persona ha come attributo occhi, gli occhi a loro volta possono essere azzurri, verdi, marroni e questi si chiamano sottoattributi quelli inseriti nell'ovale, la relazione 1,n è quella che ti ho detto io, mentre l'1 a 1 non si specifica mai nel modello e-r è sottointesa... devi solo specificare la relazione 1.n

  8. #8
    Originariamente inviato da ShAdOw WaLkEr
    no parlo di sottoattributo chenneso l'entità persona ha come attributo occhi, gli occhi a loro volta possono essere azzurri, verdi, marroni
    Ma questa cosa non si ottiene con un campo VARCHAR?

    Cioè non è di fatto quello che l'attributo B(per esempio) può assumere come valore?

  9. #9
    Utente di HTML.it
    Registrato dal
    Sep 2011
    Messaggi
    9
    Credo proprio di si. Comunque ragazzi un'altra domanda. Le relazioni di un modello relazione come vengono tradotte in linguaggio sql? Tramite dei join tra le due entità coinvolte nella relazione stessa? o creando una tabella con riferimenti alle tabelle soggette della relazione?

  10. #10
    Originariamente inviato da TARAS88
    o creando una tabella con riferimenti alle tabelle soggette della relazione?
    cosi
    Non si può risolvere un problema usando lo stesso modo di pensare che ha creato quel problema.
    Albert Einstein

    Siate Affamati, siate Folli, siate Onesti e siate Generosi

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 © 2025 vBulletin Solutions, Inc. All rights reserved.