Esercizio ... schema concettuale diagramma E - R

di il
29 risposte

29 Risposte - Pagina 2

  • Re: Esercizio ... schema concettuale diagramma E - R

    Osvaldo , ho apportato le ultime modifiche come mi hai suggerito e dovrebbe andar bene pero' sicuramente le caratteristiche degli attributi e le chiavi primarie devo essere riviste.
    Non ti spaventare per quello che sto' per scrivere .....L'esercizio prosegue .

    Questa volta pero' voglio arrivarci da solo ragionandoci con un po' piu' di tempo .
    In base a i suggerimenti che mi hai dato dovrei farcela.
    Semmai una volta terminato mi ci dai una controllata ...( sempre per cortesia e se ne hai voglia e tempo )

    Proseguimento dell'esercizio ....

    Estendere lo schema concettuale ottenuto in risposta alla domanda precedente,
    per tenere conto delle seguenti speciche aggiuntive:

    E' di interesse rappresentare possibili itinerari di visita.

    Ogni itinerario e relativo ad un solo museo, ha un codice identicativo (unico nell'ambito del museo) ed e costituito da una lista ordinata di sale da visitare e, per ogni sala, da una lista ordinata di opere da vedere.

    Si vogliono rappresentare anche visite guidate a un museo che hanno ciascuna un nome, un
    orario di inizio, una durata e si basano su un certo itinerario.

    Le visite guidate si ripetono nei vari giorni della settimana con un numero massimo di partecipanti diverso.
    Allegati:
    17659_1436229d596f80a16d477a4da741147f.png
    17659_1436229d596f80a16d477a4da741147f.png
  • Re: Esercizio ... schema concettuale diagramma E - R

    Ammesso che vogliamo sorvolare su tutta la cascata Regioni--->Province in quanto si ritiene che uno stesso NomeMuseo appare improbabile attribuito a molte Città...ma, prima o poi, se non altro per una ragione di completezza, nasce spontaneo che, se io cito (invento) Museo Michele Lorusso di San Vito, nascerà spontanea la domanda "ma a quale Comune "San Vito" ci si riferisce"? Dove si trova? Ecc...

    Quando si parla di relazioni fra tabelle, il termine "uno-a-molti" si intende automaticamente fra [campo chiave primaria tabella madre]--->[campo chiave esterna tabella figlia].
    Le tabelle che hai mostrato, vanno tutte documentate con tutti i relativi campi dandogli un congruo/coerente significato.

    Ribadisco il consiglio di nominare al plurale la tabella Autori.
    Conseguentemente sii anche coerente con i corrispettivi campi chiave. Se preferisci CodiceAutore, nomina allo stesso modo CodiceAutore anche in tabella figlia [Opere d'Arte] (al posto di IDArtista).

    Per tutto il resto, leggi attentamente il regolamento, non è possibile risolvere i compiti a casa...
  • Re: Esercizio ... schema concettuale diagramma E - R

    OsvaldoLaviosa ha scritto:


    Per dvaosta: Se non ti piace la gerarchia Nazioni--->Regioni--->Province--->Comuni, prova a dare un'occhiata al database di @Alex dove parla delle "caselle combinata a cascata". Lui mette tutto in un'unica tabella Comuni, il risultato finale è equivalente, ma resta il fatto di DOVER tracciare UNIVOCAMENTE ogni Comune con il suo IDComune (si può usare anche il CodiceFiscaleComune se si riesce a reperirlo facilmente). Ci sono:
    - Comuni omonimi in diverse Nazioni
    - Comuni omonimi in diverse Regioni
    - Comuni omonimi in diverse Province
    Non importa com'è fatto il db di @Alex. Le specifiche sulle quali dobbiamo basarci sono quelle all'inizio di questo topic, e lì non si parla di province e regioni (tra l'altro, non tutte le nazioni sono organizzate in province e regioni, ma questo è un altro discorso).
    So bene che nella realtà potrebbero esserci comuni omonimi nella stessa provincia, e infatti già sopra ho detto che il tuo modello gestirebbe anche questa evenienza; però le specifiche, parlando solo di nazioni, non contemplano l'esistenza di regioni e province.

    Per rafforzare questo concetto, ti faccio l'esempio di un esercizio (preso da un tema d'esame) che ho fatto proprio stamattina e in cui ho commesso un errore simile.
    In pratica si trattava di modellizzare una videoteca, in cui tra le altre cose c'era un'entità CONTRATTO DI NOLEGGIO che conteneva tutti i noleggi, sia correnti che passati, di tutti i clienti, ed ogni noleggio poteva essere relativo a più videocassette, per cui oltre alla relazione con l'entità cliente ce n'erano 2 con l'entità VIDEOCASSETTA: una per le videocassette attualmente fuori dal negozio e una per le cassette già restituite.
    Ora, le specifiche dicevano testualmente "un cliente può restituire in date diverse le videocassette noleggiate con un unico contratto".
    Da ciò io ho pensato che alla seconda relazione tra contratto e videocassetta bisognasse aggiungere l'attributo data_restituzione; ebbene, nella correzione l'attributo non era presente, e ciò perché, nonostante le specifiche dicessero che le cassette potevano essere restituite in giorni diversi, non dicevano di mantenera la data di restituzione, per cui non andava fatto.

    In conclusione, è molto importante non aggiungere entità o attributi oltre a quelli esplicitamente richiesti dalle specifiche. Al limite si possono aggiungere degli identificatori (tipo degli ID), ma sarebbe comunque preferibile farlo in fase di ristrutturazione.
  • Re: Esercizio ... schema concettuale diagramma E - R

    Scusa Osvaldo ma non ho ancora la lucidità necessaria di capire i passaggi che hai descritto .

    Mammano che mi esercito li capirò'

    Ho comunque apportato qualche modifica . Ho aggiunto dei file txt di commento pero' per paura di scrivere cose inesatte non ho aggiunto descrizioni ho solo scritto gli attribui.
    Non ho apportato neanche altre Entita' e ne Relazioni .
    Allegati:
    17659_c21a854a4e76e09307e5087e82a8d492.png
    17659_c21a854a4e76e09307e5087e82a8d492.png
  • Re: Esercizio ... schema concettuale diagramma E - R

    Sinceramente non capisco la fonte dello scopo di questi esercizi. Nei nostri forum si parla di database veri e propri e bisogna aver a che fare con i termini tecnici adatti. Il CAMPO CHIAVE è di fondamentale importanza. Va eletto, dichiarato esplicitamente e USATO.

    FabioPOI ha scritto:


    Scusa Osvaldo ma non ho ancora la lucidità necessaria di capire i passaggi che hai descritto .
    Però uno studio su un manuale di base sarebbe doveroso. Non puoi procedere a casaccio per tentativi. Credo di averti fornito tutte le coordinate tecnico-logiche. Sei tu che devi capire il seguito.
  • Re: Esercizio ... schema concettuale diagramma E - R

    I campi chiave comunque sono dichiarati nella descrizione dell'attributo .
    Si clicca su la casellina is Unique ( Default value must be a valid SQL value ) almeno con il programma RISE.
  • Re: Esercizio ... schema concettuale diagramma E - R

    Io non uso RISE, quindi devi descrivere tutto dettagliatamente a parole al fine di una descrizione comprensibile per qualsiasi applicazione che contempli i database.
    Errori logici e formali:
    1. La tabella Città non mostra campi.
    2. Ti è stato suggerito vivamente di nominare al PLURALE nome tabella, al SINGOLARE nome campo.
    3. Il campo SalaEsposizione nella tabella Autori non centra nulla.
    4. I tipi di campo devono essere coerenti. Generalmente i campi come IDQualcosa sono di tipo "contatore" oppure "numerico". Gli altri, quando non dichiarati o intuitivamente, si presuppone di tipo "testo"...sono dettagli per me importanti...poi non so a quale livello di profondità vogliono arrivare i tuoi "esercizi".
    5. Se hai creato una tabella Sale, in tabella [Opere d'Arte] non ti serve più IDMuseo, ma forse IDSala. IDSala si porterà automaticamente il proprio IDMuseo appresso in quanto Musei dovrebbe essere tabella di livello gerarchico superiore.

    Cerca di essere chiaro anche a parole, perchè il tuo disegno sta diventando sempre più ingarbugliato e non è detto che ci dobbiamo capire per forza qualcosa. Io uso Access e la grafica è leggermente più snella.
  • Re: Esercizio ... schema concettuale diagramma E - R

    I primi quattro punti li ho corretti aggiungendo anche due attributi all'entita' Citta.

    Il quinto punto lo devo rivedere perche' non ho aggiunto un'altra entita' Sale ma quel riquadro il giallo serve per la descrizione che non ho ancora scritto .

    Tutti gli attributi sono stati settati in base alle loro caratteristiche , per esempio i campi con ID sono decimali perche' non c'e' l'opzione numerico . Forse andrebbe bene float .
    Gli altri campi sono campi di testo meno che il CAP le date hanno il campo Date .
    Le chiavi primarie sono state scelte .
    Non sapevo che Access consentisse di creare database . per questa volta mi conviene proseguire con RISE la prossima volta utilizzo Access.
    Per quanto riguarda l'ingarbugliamento sono d'accordo infatti sto' facendo il possibile di non aggiungere altro . Ho solo aggiunto l'entita' Itinerari Di Visita per proseguire con l'esercizio pero' mi sono pentito perche' prima devo mettere a posto la prima parte dell'eserczio.

    Mi stai dando un grosso aiuto Osvaldo ..mille grazie.
    Allegati:
    17659_233f01791c2c2fadb190297be4b54620.png
    17659_233f01791c2c2fadb190297be4b54620.png
  • Re: Esercizio ... schema concettuale diagramma E - R

    Le tabelle le ho nominate al plurale e gli attributi al singolare pero' i riquadri gialli non li ho modificati essendo di descrizione forse pero' andrebbero modificati !
  • Re: Esercizio ... schema concettuale diagramma E - R

    Io la vedo così:

    Nazioni
    SiglaNazione (testo, chiave primaria)
    Nazione

    Città
    IDCittà (contatore, chiave primaria)
    Città
    CAP
    SiglaNazione

    Musei
    IDMuseo (contatore, chiave primaria)
    Museo
    IDCittà (numerico)

    Sale
    IDSala (contatore, chiave primaria)
    NomeSala
    Dimensione
    IDMuseo (numerico)

    Autori
    IDAutore (contatore, chiave primaria)
    Nome
    Cognome
    DataNascita
    DataMorte

    OpereArte
    IDOperaArte (contatore, chiave primaria)
    NomeOpera
    DataOpera
    IDAutore (numerico)
    IDSala (numerico)
    Collocazione (in questo campo ci scrivi qualcosa come Teca2, In alto a dx...non so...)

    Relazioni:
    Nazioni.SiglaNazione uno-a-molti con Città.SiglaNazione
    Città.IDCittà uno-a-molti con Musei.IDCittà
    Musei.IDMusero uno-a-molti con Sale.IDMuseo
    Sale.IDSala uno-a-molti con OpereArte.IDSala
    Autori.IDAutore uno-a-molti con OpereArte.IDAutore

    Se devi disegnare quelle linee a mano, sii almeno coerente che la linea parta dal campo chiave primaria e raggiunga esattamente il campo chiave esterna...i tuoi disegni non sempre sono chiari...

    Quanti e quali tipi di dati ti offre RISE? Che vuol dire "float"?
    Decimale non va bene. Quando dico Numerico intendo NumeroInteroPositivo (1-2-3-4...27...38...1002...). In Access esiste un particolare tipo di campo chiamato Contatore oppure Numerazione automatica che produce automaticamente i numeri interi positivi partendo da 1 fino all'infinito. Questo tipo di numero garantisce la totale univocità dei valori all'interno del recordset, quindi lo rende facilmente eleggibile come chiave primaria.
  • Re: Esercizio ... schema concettuale diagramma E - R

    Domani lo ricostruisco da capo utilizzando Access.
  • Re: Esercizio ... schema concettuale diagramma E - R

    Ho utilizzato Access .
    Mi e' venuto fuori questo report :
    Allegati:
    17659_1591dc4573df1b035032960a2374f16f.png
    17659_1591dc4573df1b035032960a2374f16f.png
  • Re: Esercizio ... schema concettuale diagramma E - R

    OK. Mi raccomando:
    1. Rinomina il campo IDMuseo (al singolare) dentro la tabella Musei
    2. Questo è un problema più di Access...non so se ti serve per l'esercizio...ma quando crei una relazione dentro la finestra Relazioni ti appare una finestra di dialogo con alcune opzioni. Ricorda di mettere SEMPRE la spunta su "Applica integrità referenziale".
  • Re: Esercizio ... schema concettuale diagramma E - R

    Una due volte la referenziabilita' mi e' stata respinta devo capire il perche' .
  • Re: Esercizio ... schema concettuale diagramma E - R

    I campi da relazionare devono avere caratteristiche simili/compatibili:
    Contatore/Numerazione automatica--->Numerico (Intero Lungo)
    Testo--->Testo (con lo stesso numero alla proprietà Dimensione campo)
    Forse hai già inserito alcuni valori, ma dimenticando di essere coerente con i valori da inserire nei campi chiave esterna...
Devi accedere o registrarti per scrivere nel forum
29 risposte