OVH Cloud OVH Cloud

index multichamp

15 réponses
Avatar
ylb
Bonjour,

J'ai une table t1 avec deux champs c1 et c2. Je crée un index multichamp
unique sur c1 et c2.
Je crée un premier enregistrement avec c1=a et c2 = null.
je crée un second enregistrement avec c1=a et c2 = null (normallement
doublon du premier).

Access enregistre le nouvel enregistrement, pourquoi l'index unique ne
fonctionne pas ??

Merci de me répondre

5 réponses

1 2
Avatar
3stone
Salut,

"ylb"
| Remarque j'utilise access 97 , et j'ai effectué des test avec access200 et
| c'est pareil


J'avais essayé sur 2003, et il m'avais "semblé" que cela fonctionnait.
Désolé de t'y avoir fait croire... car...

peuchère... les cinq doigts dans... l'oeil ;-((


Cela m'a fait rechercher une réponse que j'ai trouvée :
http://minilien.com/?P6qjMjHFwK

après cela on se fout une baffe de ne pas y avoir pensé :o))


--
A+
Pierre (3stone) Access MVP
Perso: http://users.skynet.be/accesshome/
Conseils MPFA: http://users.skynet.be/mpfa/
Email : http://www.cerbermail.com/?Xfg61Z3IQw
Avatar
ylb
Bonjour

Petite ou grande remarque je ne sais pas , mais sous Sql-server cet index
fonctionne avec des champs null (je l'ai testé) et de mémoire je pense que
sous Oracle c'est pareil.
Donc je pencherait plus pour une anomalie sous access.

Je vais contourner le problème en créeant un index unique sur le premièr
champ et un index unique sur la combinaison des deux champs.

Merci d'avoir cherché et bonne journée


Salut,

"ylb"
| Remarque j'utilise access 97 , et j'ai effectué des test avec access200 et
| c'est pareil


J'avais essayé sur 2003, et il m'avais "semblé" que cela fonctionnait.
Désolé de t'y avoir fait croire... car...

peuchère... les cinq doigts dans... l'oeil ;-((


Cela m'a fait rechercher une réponse que j'ai trouvée :
http://minilien.com/?P6qjMjHFwK

après cela on se fout une baffe de ne pas y avoir pensé :o))


--
A+
Pierre (3stone) Access MVP
Perso: http://users.skynet.be/accesshome/
Conseils MPFA: http://users.skynet.be/mpfa/
Email : http://www.cerbermail.com/?Xfg61Z3IQw




Avatar
ylb
mon idée de contournement ne fonctionne pas c'est évident je doit être mal
réveillé.
Donc je suis coincé et je pense sérieusement qu'il y a un "bug" dans Access.


Bonjour

Petite ou grande remarque je ne sais pas , mais sous Sql-server cet index
fonctionne avec des champs null (je l'ai testé) et de mémoire je pense que
sous Oracle c'est pareil.
Donc je pencherait plus pour une anomalie sous access.

Je vais contourner le problème en créeant un index unique sur le premièr
champ et un index unique sur la combinaison des deux champs.

Merci d'avoir cherché et bonne journée


Salut,

"ylb"
| Remarque j'utilise access 97 , et j'ai effectué des test avec access200 et
| c'est pareil


J'avais essayé sur 2003, et il m'avais "semblé" que cela fonctionnait.
Désolé de t'y avoir fait croire... car...

peuchère... les cinq doigts dans... l'oeil ;-((


Cela m'a fait rechercher une réponse que j'ai trouvée :
http://minilien.com/?P6qjMjHFwK

après cela on se fout une baffe de ne pas y avoir pensé :o))


--
A+
Pierre (3stone) Access MVP
Perso: http://users.skynet.be/accesshome/
Conseils MPFA: http://users.skynet.be/mpfa/
Email : http://www.cerbermail.com/?Xfg61Z3IQw






Avatar
3stone
Salut,

"ylb"
| Donc je suis coincé et je pense sérieusement qu'il y a un "bug" dans Access.


Je ne suis pas convaincu du bug....
L'explication de Michel Walsh (et l'illustration de Celko) et tout à fait cohérente,
et la différence (entre soft) ne veut pas dire bug ;-)

Par contre pour contourner ton problème, ne pourrais tu pas remplacer
ton Null par une valeur par défaut ?


--
A+
Pierre (3stone) Access MVP
Perso: http://users.skynet.be/accesshome/
Conseils MPFA: http://users.skynet.be/mpfa/
Email : http://www.cerbermail.com/?Xfg61Z3IQw
Avatar
3stone
re,

"3stone"
| Par contre pour contourner ton problème, ne pourrais tu pas remplacer
| ton Null par une valeur par défaut ?


Je viens d'essayer...

en donnant en valeur par défaut une chaine vide ("") et en autorisant
ces chaînes vides, Access n'accepte plus ces doublons...

et je pense que dans ton cas, il devrait être acceptable d'avoir une chaine vide
à la place d'un Null.


--
A+
Pierre (3stone) Access MVP
Perso: http://users.skynet.be/accesshome/
Conseils MPFA: http://users.skynet.be/mpfa/
Email : http://www.cerbermail.com/?Xfg61Z3IQw
1 2