View Full Version : ACCESS
Michael Jennings
12-02-2007, 11:26
Salve a tutti,
ho una relazione nel mio modello logico ke prevede 2 chiavi. In questo caso ho una chiave composta giusto? Quindi è possibile avere 2 ennuple così:
1)codice 0
nome mario
2)codice 0
nome maria
Se è così xkè in access vule valori diversi anke sul singolo campo?
~ZeRO sTrEsS~
12-02-2007, 11:53
Salve a tutti,
ho una relazione nel mio modello logico ke prevede 2 chiavi. In questo caso ho una chiave composta giusto? Quindi è possibile avere 2 ennuple così:
1)codice 0
nome mario
2)codice 0
nome maria
Se è così xkè in access vule valori diversi anke sul singolo campo?
quando imposti una chiave, ogni valore deve essere univoco, visto che verrá associato ad un solo record, ti faccio un esempio di come vengono usate due chiavi.
nella nostra azienza programmiamo dei campioni per sondaggi e ogni progetto ha un codice che varia per noi programmatori é uno per il servizio clienti é un altro
1) Codice per programmatori: 1234
2) Ordinativo per cliente: 6AB
3) Nome cliente ecc..
i primi due codici sono chiavi primarie, devono essere univoci, perché mettiamo caso che ordinativo cliente sia doppio quel codice potrebbe essere applicato a due progetti totalmente diversi per due clienti totalmente diversi.
Le chiavi fanno si che ogni valore sia univoco in una corrispondenza
Michael Jennings
12-02-2007, 12:02
Ti ringrazio innanzitutto per l'interesse. Conosco il concetto di chiave, cioè quell'attributo i cui valori consentono di individuare univocamente una tupla. Tuttavia se la chiave è composta (ad esempio nel mio caso la relazione NOLEGGIO ha come chiave i campi codicefilm e codicecliente)dovrebbe permettere duplicati nei singoli campi purchè non ci siano duplicati x le coppie di campi(che nel mio caso formano la chiave)...giusto??
Nella realtà di interesse voglio quindi che il singolo noleggio sia identificabile dal film e dal cliente che lo ha noleggiato. Per cui deve essere possibile avere nel campo codicefilm + valori uguali e lo stesso x il campo codicecliente. Tutavia non deve presentarsi la situazione in cui abbiamo due noleggi diversi ma che in realtà hanno stesso film nleggiato e stesso cliente.
Es.:
codicefilm codicecliente
0 mario
0 mario
Voglio però ke sia possibile:
codicefilm codicecliente
0 mario
0 fabio
1 fabio
~ZeRO sTrEsS~
12-02-2007, 14:21
Ti ringrazio innanzitutto per l'interesse. Conosco il concetto di chiave, cioè quell'attributo i cui valori consentono di individuare univocamente una tupla. Tuttavia se la chiave è composta (ad esempio nel mio caso la relazione NOLEGGIO ha come chiave i campi codicefilm e codicecliente)dovrebbe permettere duplicati nei singoli campi purchè non ci siano duplicati x le coppie di campi(che nel mio caso formano la chiave)...giusto??
Nella realtà di interesse voglio quindi che il singolo noleggio sia identificabile dal film e dal cliente che lo ha noleggiato. Per cui deve essere possibile avere nel campo codicefilm + valori uguali e lo stesso x il campo codicecliente. Tutavia non deve presentarsi la situazione in cui abbiamo due noleggi diversi ma che in realtà hanno stesso film nleggiato e stesso cliente.
Es.:
codicefilm codicecliente
0 mario
0 mario
Voglio però ke sia possibile:
codicefilm codicecliente
0 mario
0 fabio
1 fabio
Umm bella rogna.. allora ti premetto che non sono espertissimo di access, ma se mi ci metto qualcosa la ottengo sempre.
Ti dico l'idea che ho avuto, ora sono a lavoro e non ho tempo di smanettare stasera provo a fartela in maniera pratica ma l'idea é questa
Tre tabelle
Prima tabella (con chiave primaria)
1) codicefilm
Seconda
2) codicecliente (con chiave primaria)
altra tabella
3) codicefilm+codicecliente (con chiave primaria)
Per quello che ho capito tu vorresti avere un elenco di chi noleggia i film in database ma senza duplicati, nel momento in cui hai un duplicato ti vai a richiamare il record esiste (magari aggiungendoci una quantitá). Il modo per non far si che si immettano valori doppi é quello su, oppure puoi fare una query che esegui a fine giornata che ti elimini i doppioni
vBulletin® v3.6.4, Copyright ©2000-2026, Jelsoft Enterprises Ltd.