Problemi di Relazioni/Aggiornamento automatico campi

di il
7 risposte

Problemi di Relazioni/Aggiornamento automatico campi

Ciao a tutti, volevo chiedervi una mano con Access, versione 2003!
Io ho una tabella con dati anagrafici, ad ogni persona è associato un ID utente, e poi ho un'altra tabella con altri dati relativi a queste persone. Volevo mettere solo l'ID Utente nella seconda tabella per evitare una ridondanza di dati anagrafici.
Problema:
La tabella anagrafica è stata fatta prima di questa seconda tabella, infatti adesso sto facendo query di accodamento per riempire questa seconda tabella, e mi sto chiedendo se c'è un modo di aggiornare automaticamente l'ID utente facendoglielo prendere dalla tabella anagrafica. Ho messo in relazione l'ID utente tra le due tabelle, ma credo che senza un qualche tipo di codice non lo possa fare.
Scusate l'assurdità della domanda, sono veramente alle prime armi!
Vi ringrazio per l'attenzione!

7 Risposte

  • Re: Problemi di Relazioni/Aggiornamento automatico campi

    LukeP ha scritto:


    ho una tabella con dati anagrafici, ad ogni persona è associato un ID utente
    Quindi [ID Utente] è la chiave primaria: giusto?

    LukeP ha scritto:


    poi ho un'altra tabella con altri dati relativi a queste persone. Volevo mettere solo l'ID Utente nella seconda tabella per evitare una ridondanza di dati anagrafici.
    Esatto. Si chiama relazione uno-a-molti.

    Potresti:
    - dire il nome proprio della 2a tabella
    - elencare tutti i campi di entrambe le tabelle
  • Re: Problemi di Relazioni/Aggiornamento automatico campi

    Grazie dell'attenzione innanzitutto!
    la seconda tabella si chiama [Dati Inserimenti]
    La tabella anagrafica contiene appunto:
    -ID utente
    -cognome
    -nome
    -codice fiscale
    -data di nascita
    -comune di nascita
    -comune di residenza
    e altre notizie secondarie

    la tabella degli inserimenti include:
    -codice della struttura in cui la persona si è recata (cod.struttura)
    -Id utente
    -Data di ingresso
    -Data di uscita
    ...
    Altri campi Secondari, prevalentemente codici che sono spiegati meglio in altre tabelle da me usate come legende.
  • Re: Problemi di Relazioni/Aggiornamento automatico campi

    LukeP ha scritto:


    adesso sto facendo query di accodamento per riempire questa seconda tabella, e mi sto chiedendo se c'è un modo di aggiornare automaticamente l'ID utente facendoglielo prendere dalla tabella anagrafica. Ho messo in relazione l'ID utente tra le due tabelle, ma credo che senza un qualche tipo di codice non lo possa fare.
    Per me non devi fare alcun accodamento, nè codice.
    Hai relazionato nella finestra Relazioni?
    Quando lo hai fatto hai messo il segno di spunta almeno su "Applica integrità referenziale"?
    Dopo di che potresti sfruttare il "foglio dati secondario" indicando il campo [ID Utente] come "Collega campi secondari" e "Collega campi master".
    Meglio ancora sarebbe lavorare con maschera/sottomaschera Anagrafica/Inserimenti. Leggi la guida in linea per costruirla con procedura guidata, avendo cura di includere tutti i campi di entrambe le tabelle di origine.

    LukeP ha scritto:


    la tabella degli inserimenti include:
    -codice della struttura in cui la persona si è recata (cod.struttura)
    -Id utente
    -Data di ingresso
    -Data di uscita
    ...
    Questo mi fa pensare che tu abbia anche una tabella Strutture in relazione uno-a-molti con Inserimenti: OK. Non è rilevante ai fini della domanda principale.
  • Re: Problemi di Relazioni/Aggiornamento automatico campi

    Effettivamente la cosa del foglio dati secondario può essere molto utile, il problema è che io devo prendere questi dati da altri db, e quindi devo importare questi dati come tabelle e poi inserirle nelle tabelle del MIO db. A questo punto l'idea più veloce che mi era venuta in mente era accodare, anche perchè ci sono circa 15'000 record. Con il foglio dati secondario si possono prendere tanti dati tutti insieme come con l'accodamento? Scusa l'ignoranza
  • Re: Problemi di Relazioni/Aggiornamento automatico campi

    LukeP ha scritto:


    il problema è che io devo prendere questi dati da altri db, e quindi devo importare questi dati come tabelle e poi inserirle nelle tabelle del MIO db.
    Questa cosa va un po' chiarita. Tu puoi tranquillamente IMPORTARE (temporaneamente) le tabelle nel tuo database. Magari quando lo fai nominale Anagrafica1, Anagrafica2 ecc...Non sappiamo però con certezza se Rossi Mario compare più volte nelle varie Anagrafiche.
    Anche se siamo sicuri che ogni Anagrafica ha valori univoci, quindi mai ripetuti nelle altre Anagrafiche...effettivamente il valore [ID Utente]=20 può assumere diversi significati.
    Potresti chiarire questi aspetti?

    La tabella Inserimenti ha già dei valori? Hai difficoltà nel farli calibrare bene con la tua futura Anagrafica completa?
  • Re: Problemi di Relazioni/Aggiornamento automatico campi

    OsvaldoLaviosa ha scritto:


    Non sappiamo però con certezza se Rossi Mario compare più volte nelle varie Anagrafiche.
    Anche se siamo sicuri che ogni Anagrafica ha valori univoci, quindi mai ripetuti nelle altre Anagrafiche...effettivamente il valore [ID Utente]=20 può assumere diversi significati.
    Potresti chiarire questi aspetti?

    La tabella Inserimenti ha già dei valori? Hai difficoltà nel farli calibrare bene con la tua futura Anagrafica completa?
    Si il signor Mario Rossi può chiaramente ricapitare nelle varie Anagrafiche. Il valore ID Utente=20 assume diversi significati solo se visto nelle diverse Anagrafiche, ma nella tabella anagrafica del mio db il valore 20 sarà solo una persona, con i vari inserimenti che ha collegati.
    La tabella inserimenti è al momento vuota, mi sono bloccato cercando di inserire questi dati dentro questa tabella che ho appena fatto.
  • Re: Problemi di Relazioni/Aggiornamento automatico campi

    Il guaio sarebbe stato se avevi già valori dentro Inserimenti.
    Riepilogando tu hai bisogno di mettere in piedi una sola Anagrafica avendo cura di non ripetere stessi nominativi.
    1. Togli la relazione Anagrafica uno-a-molti Inserimenti
    2. Importa tutte le Anagrafica come ti avevo detto nominandole Anagrafica1, Anagrafica2 ecc...
    3. Crea una nuova tabella AnagraficaX con gli stessi campi (ti serve da tabella transitoria...capirai dopo perchè)
    4. Con opportune query di accodamento, trasferisci tutte le Anagrafica1, Anagrafica2 ecc... in AnagraficaX
    5. Succede che AnagraficaX potrebbe avere dei nominativi scritti più di una volta. Allora fai una "query di ricerca duplicati" sui campi Cognome e Nome e di conseguenza elimini i record doppioni/multipli.
    6. Quando sei sicuro che AnagraficaX ha tutti valori univoci, fai un'altra query di accodamento da AnagraficaX in Anagrafica. In questo modo Anagrafica avrà la numerazione automatica di [ID Utente] integra.
    7. Ripristina la relazione Anagrafica uno-a-molti Inserimenti
Devi accedere o registrarti per scrivere nel forum
7 risposte