Newsgroup: it.comp.appl.access
Titolo: Nuovo Record

salve!
ho creato 1 tabella e altre 4 ad esse collegate tramite una relazione
(hanno in comune un campo della prima tabella).
Ho messo in relazione l'ID della prima con un campo contatore delle
altre.
Per inserire i dati uso una maschera.
Se voglio inserire però un nuovo record, devo PRIMA inserire il dato del
campo in relazione tramite una nuova maschera (dove c'è solo questo
campo), perchè se lo faccio direttamente da quella "principale", quel
campo me lo aggiorna, ma no gli altri, visto che infatti non mi fa
nemmeno scrivere.
Ho provato a creare una maschera in base alla prima tabella,
però non so perchè ma il campo in relazione non avanza di record. Rimane
sempre lo stesso e avanzano solo gli altri
come posso fare?
aiutatemi per favore :((
grazie
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

mi spiego meglio:
tab1
ID
nome
tab2
indirizzo
numero civico
cap
città
pippo (numerico)
tab3
sesso
data di nascità
professione
ecc..
..
pippo (numerico)
La prima maschera è in relazione con le altre due
ho creato due maschere:
- tab1+tab2
- tab1+tab3
voglio che i record siano corellati, quindi quando dalla maschera1
aggiungo un nuovo record, voglio che poi nell'altra maschera sia
visualizzato
il campo della tab1 NUOVO.


 grazie
Non mi č molto chiaro cosa tu abbia fatto.
La relazione che lega le varie tabelle č di tipo uno-a-uno o di tipo
uno-a-molti?
In questa seconda ipotesi quale sono le tabelle del lato uno e quali quelle
del lato molti?
Sarebbe bene che tu postassi anche la struttura delle 5 tabelle,
evidenziando per ognuna sia la chiave primaria che la chiave esterna.
Per l'aggiornamento delle tabelle hai usato la tecnica maschera/sottomasche
al limite realizzata con l'autocomposizione controllo?
-- 
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------

 al limite realizzata con l'autocomposizione controllo?
prima l'avevo fatto con una maschera normale, ma ho visto che non va
tanto bene
per quanto riguarda il resto (chiave primaria,ecc) sono nuovo del mondo
access quindi non tanto esperto :(
Io comunque ho messo come chiave primaria gli ID di tutte le
maschere, ma non idea se sia giusto o meno..


 ha scritto nel messaggio
news:1af42e55f5619c02bb7...@mygate.mailgate.org...

Onestamente mi sfugge il motivo per cui usi tre tabelle e non usi un unica
tabella. si insomma perché tieni il nome in una tabella e il sesso e la data
di nascita in un'altra e poi l'indirizzo in un'altra ancora: onestamente mi
sembri un po' masochista.
Ti ricordo che i campi vuoti non occupano spazio su disco.


 maschere, ma non idea se sia giusto o meno..
Poiché ritengo che a fronte di un nominativo su tab1 possa esistere un solo
record su tab3 con la data di nascita, sesso ecc. non capisco perché tra
tab1 e tab2 tu dici che ci sia una relazione uno-a-molti, eventualmente
dovrà esserci una relazione uno-a-uno: non credo che una persona possa avere
più di una data di nascita o più di un sesso. Ma comunque torno a ripetere
che non capisco quale sia il motivo per cui tu non inserisca i campi di tab3
in tab1 ed elimini la tabella tab3.
Quale è il motivo?????
La stessa cosa potrebbe essere detto per tab2, almeno che tu, per un solo
nominativo, voglia memorizzare più di un indirizzo (abitazione principale,
seconda residenza, domicilio, indirizzo dell'amante ecc.).
Comunque il database è tuo e devi dwcidere tu cosa fare; fermo restando che
ritengo che il database che stai costruendo non è certo normalizzato, anche
se a malincuore provo ad attaccare l'asino dove vuole il padrone: ovvero, se
vuoi mantenere i dati suddivisi su tre tabelle in relazione in relazione tra
loro uno-a-molti, prova a valutare la seguente soluzione.
Partendo dal presupposto che in una tabella di Access è SEMPRE meglio avere
una chiave univoca (alias chiave primaria), secondo me le tre tabelle
dovrebbero avere la seguente struttura:
tab1
-----
IDNominativo        Contatore e chiave primaria
Nome                    Testo
tab2
-----
ID                          Contatore e chiave primaria
IDNominativo         Numerico  (chiave esterna)
Indirizzo                 Testo
NumeroCivico        Testo
CAP                      Testo
Città                       Testo
tab3
-----
ID                           Contatore e chiave primaria
IDNominativo         Numerico (chiave primaria)
DataDiNascita         Data/ora
Professione             Testo
ecc. ecc.
Metti tab1 e tab2 tra loro in relzione uno-a-molti un base ai rispettivi
campi IDNominativo.
Metti tab1 e tab3 tra loro in relzione uno-a-molti un base ai rispettivi
campi IDNominativo.
Aggiungi a queste due relazioni l'integrità referenziale ed abilita
l'opzione Elimina record correlati a catena.
Ora con l'autocomposizione maschera creati una maschera che abbia una
visualizzazione a maschera singola e tab1 come origine record. In questa
maschera con l'autocomposizione controllo inserisci un controllo
sottomaschera che abbia tab2 come origine record e sempre con
l'autocomposizione controllo inserisci un altro controllo sottomaschera che
abbia come origine record tab3.
Così facendo penserà automaticamente Access a impostare automaticamente le
chiai esterne di tab2 e tab3 quando inserirai un nuovo record.
Visto che sei alle prime armi di Access mi sono permesso di consigliarti di
usare le autocomposizioni così da evitare errorei che non farai più solo
quando avrai imparato un po' di più Access, ed allora potrai permetterti il
lusso di rinunciare all'ausilio delle autocomposizioni.
