Esempio su modello relazionale

di il
38 risposte

38 Risposte - Pagina 3

  • Re: Esempio su modello relazionale

    Fretta? No… lo hai ripetuto più volte andiamo…. Un ripassino all'inglese scritto è conaigliato

  • Re: Esempio su modello relazionale

    05/03/2023 - oregon ha scritto:


    Fretta? No… lo hai ripetuto più volte andiamo…. Un ripassino all'inglese scritto è conaigliato

    Per fretta intendevo lo scrivere in modo fonetico e senza ricontrollare (ecco il richiamo anche a teteil) 

    Un ripasso all'italiano? Che significa conaigliato?

    Piuttosto che uscire fuori tema si dovrebbe aiutare chi si approccia alla programmazione. Magari sul forum “inglesemadrelingua” il richiamo sarebbe stato appropriato.

  • Re: Esempio su modello relazionale

    Ovviamente è consigliato. Quello è un refuso unico, non ripetuto (come potrebbe essere tetail).

    Ma non mi interessa polemizzare, era solo per fare chiarezza a chi legge e, senza conoscere la questione, pensa che si scriva “deteil”.

    Non è possibile fare passare queste cose in un forum tecnico, non si fa un buon servizio in questo caso, non si aiuta ma si confonde ulteriormente chi chiede.

    E comunque la questione dell'inglese era di contorno, come ha fatto notare @migliorabile, era il resto che era alquanto confuso

    cit. “dalla tua spiegazione non ho capito niente (oltre ad esserci diversi errori ‘concettuali’).”

  • Re: Esempio su modello relazionale

    Scusate non ho visto minimamente i messaggi perchè non ho abilitate le notifiche sulla mail, comunque sono andato avanti con lo studio ed ho capito altri concetti e sto cercando di mettere insieme le cose, da quanto ho capito quando abbiamo a che fare con una "lista" di elementi da catalogare possiamo creare una nuova tabella per memorizzare queste informazioni con una chiave esterna che punti alla chiave primaria della prima, a parole non è facile a spiegare, meglio fare degli esempi tramite modellazione e poi magari sulla traduzione si capisce meglio, soprattuto per via delle cardinalità delle associazioni se no non si capisce mai come associare le tabelle(come anche suggerito da oregon)

  • Re: Esempio su modello relazionale

    Spero di non andare fuori tema. Ho provato a leggere e rileggere un po' tutto. Si è partiti da un database che deve tracciare gli orari ferroviari, poi si è passati a parlare di Persone e Recapiti. Poi ci si è impantanati su termini tecnici non sempre usati appropriatamente. Se posso dire la mia riguardo la normalizzazione…purtroppo gli esempi proposti da vari libri, se non appartengono al “proprio” problema concreto relazionale, non riescono a rendere l'idea. Anch'io all'inizio non capivo la normalizzazione proprio perchè si parlava di Clienti, Ordini, DettagliOrdini, Prodotti (classico esempio NorthWind) e l'esempio non chiariva nulla su altri database che volevo mettere in piedi. Ritengo che il miglior modo per approcciare la normalizzazione sia quella di cominciare a buttare dentro i primi dati così come vengono in testa. A mano a mano che si accumulano record, si cominciano a notare “ripetitività” che saltano all'occhio proprio nello schermo del computer. Da questi dati si può cominciare a ragionare volta per volta, caso per caso.
    Il forum affronta problemi specifici, non può fornire lezioni on line. Invito Domeniks88 a raccontarci un problema specifico in base a ciò che inizialmente ha provato ad approcciare, elencando nomi propri di tabelle, campi…relazioni poi quando ne risulterà “logicamente” necessario. Ricorda inoltre che in questa fase (normalizzazione) provare a sbagliare il più possibile è quanto di meglio serva per imparare.

  • Re: Esempio su modello relazionale

    22/03/2023 - OsvaldoLaviosa ha scritto:


    Spero di non andare fuori tema. Ho provato a leggere e rileggere un po' tutto. Si è partiti da un database che deve tracciare gli orari ferroviari, poi si è passati a parlare di Persone e Recapiti. Poi ci si è impantanati su termini tecnici non sempre usati appropriatamente. Se posso dire la mia riguardo la normalizzazione…purtroppo gli esempi proposti da vari libri, se non appartengono al “proprio” problema concreto relazionale, non riescono a rendere l'idea. Anch'io all'inizio non capivo la normalizzazione proprio perchè si parlava di Clienti, Ordini, DettagliOrdini, Prodotti (classico esempio NorthWind) e l'esempio non chiariva nulla su altri database che volevo mettere in piedi. Ritengo che il miglior modo per approcciare la normalizzazione sia quella di cominciare a buttare dentro i primi dati così come vengono in testa. A mano a mano che si accumulano record, si cominciano a notare “ripetitività” che saltano all'occhio proprio nello schermo del computer. Da questi dati si può cominciare a ragionare volta per volta, caso per caso.
    Il forum affronta problemi specifici, non può fornire lezioni on line. Invito Domeniks88 a raccontarci un problema specifico in base a ciò che inizialmente ha provato ad approcciare, elencando nomi propri di tabelle, campi…relazioni poi quando ne risulterà “logicamente” necessario. Ricorda inoltre che in questa fase (normalizzazione) provare a sbagliare il più possibile è quanto di meglio serva per imparare.

    Ciao grazie per la risposta, l'esercizio del libro prevedeva la ripartizione dei dati di un linea ferroviaria, precisamente richiedeva la rappresentazione dei dati delle partenze da una stazione, quindi con numero di treno, orario di partenza, stazione di destinazione e categoria del treno. Ovviamente il testo diceva che per ogni treno ha delle fermate specifiche quindi bisogna rappresentare i dati su due tabelle differenti, una riguarda le partenze ed una le fermate. Mi è stato suggerito di iniziare da una tabella stazione, ma non ho capito come procedere, ho capito invece come fare tramite le due tabelle. La tabella fermate fa riferimento alla tabella partenze tramite numero di treno che è anche la chiave primaria della tabella partenze. Ho cercato di ragionarci su facendo tre tabelle, cioè partire dalla tabella stazione ma non ho capito…

    PARTENZE

    NUM_TRENOORARIO PARTENZADESTINAZIONECATEGORIA
    55128.00ROMA TERMINIIC
    49178.27NAPOLI CENTRALER
    33149.15TORINOFRECCIA ROSS
    55429.30SALERNOR

    FERMATE INTERMEDIE

    TRENOSTAZIONEORARIO FERMATA
    5512Salerno9.00
    5512Napoli9.30
    5512Roma termini11.00
    4917Agropoli9.00
    4917Battipaglia9.20
    4917Salerno9.40
    4917Napoli centrale10.15
  • Re: Esempio su modello relazionale

    Prova questa soluzione:

    Treni
    IDTreno (qui ci scrivi 5512 ecc…)(PK)
    Categoria

    Categorie
    Categoria

    Stazioni
    IDStazione (PK)
    NomeStazione

    Timings
    IDTiming
    Time
    IDStazione (FK)
    IDTreno (FK)
    PA (qui specifichi se si tratta di Partenza o Arrivo)

    Relazioni:
    Stazioni.IDStazione uno-a-molti Timings.IDStazione
    Treni.IDTreno uno-a-molti Timings.IDTreno
    Categorie.Categoria uno-a-molti Treni.Categoria

    Riguardo il rappresentare solo le Partenze e solo gli Arrivi, ti servi di due query che filtrano i corrispondenti valori di PA.

  • Re: Esempio su modello relazionale

    Forse non è chiaro quello che devi ottenere. È stato usato l'esempio persone e indirizzi per far capire invece di scrivere n record di sempronio, uno per ogni indirizzo che potrebbe avere sempronio, puoi dividere i dati in due tabelle: una con un record dove c'è sempronio col suo codice fiscale, la sua data di nascita ecc… ed una tabella collegata che elenca n record che sono gli indirizzi possibili di sempronio.

    Una tabella madre (per non usare master, ma puoi chiamarla anche pluto) ed una tabella figlia (o detail o dettaglio o topolino fai tu, importante che sai che è subordinata alla tabella madre).

    Ma magari tu volevi i nomi delle tabelle di tuo interesse, con i campi di tuo interesse, con le relazioni già pronte, e magari anche delle query preimpostate. 

    Il regolamento vieta la pappa pronta. Se hai intuito sai distinguere la tabella che richiede un record (nel tuo caso il freccia rossa matricola 123 come madre (o pippo o master o treni) e una lista di stazioni, magari ordinate per orario crescente, che identificano il precorso che fa il treno parte da roma termini e arriva a milano centrale passando per bologna). Bene, hai un treno master che fa n stazioni detail, e tra queste hai una capolinea di partenza e una capolinea di arrivo.

    Ora, quello che non si capisce è se ti serve sapere il treno che percorsi fa (itinerario dei treni con date di partenze da una stazione e data o orario di arrivo ad un'altra stazione che non sono necessariamente i capolinea) o per una data stazione quanti e quali treni passano (la tabella partenze e arrivi della stazione con tanto di indicazione di binario) o (esageriamo) quanti treni in coincidenza devo prendere per andare dalla stazione a alla stazione b e se ho tempi di attesa tra una coincidenza e l'altra.

    Beh, per questo hai bisogno solo di query.

  • Re: Esempio su modello relazionale

    Hm…. Cerco di uscire dalla teoria e andare sul pratico.

    Sei mai stato all ikea?

     L esposizione ed il magazzino dove prelevi i mobili scelti sono un grosso database relazionale.

    L esposizione e divisa in settori accumunati per tipo di prodotti. Ogni prodotto ha un codice che ti collega al magazzino dove poi preleverai i prodotti scelti. 

    Quindi per acquistare una scrivania, vai nella sezione ufficio, ti segni il codice e poi vai in magazzino e grazie al codice trovi il prodotto.

    Quindi se un tuo amico vuole acquistare lo stesso prodotto, fornendogli i codici ha tutto il necessario per acquistarlo.

    Quindi ora immagina delle tabelle divise per categoria dove sono contenuti i codici dei prodotti. Poi immagina una tabella magazzino dove sono contenuti gli stessi codici prodotto ed il telativo scaffale. Se colleghi le due tabelle tramite il codice del prodotto, facendo una ricerca per codice, automaticamente saprai in quale esposizione si trova quello che cerchi e contemporanemante conoscerai lo scaffale dove ritirarlo.

    Perché ad esempio avrai.

    Tabella esposizione 

    A1 scrivania in rovere massello con inserti in plastica

    Tabella magazzino 

    A1 scaffale 12.

    Come vedi con due tabelle ti porti dietro solo il codice e non tutta la descrizione. 

    Comunque quelo dei treni non è proprio un esempio semplice da usare per capire un database relazionale normalizzato. La gestione degli orari dei treni è una cosa complessa, sia a livello di struttura che di creazione pratica.

Devi accedere o registrarti per scrivere nel forum
38 risposte