OVH Cloud OVH Cloud

Rassembler Champs dans une liste

2 réponses
Avatar
Luis
Bonjour,
Dans une table Clients j'ai 3 champs contacts:
CONTACT1
CONTACT2
CONTACT3
NCLIENT
J'ai besoin de rassembler ces trois champs dans une=20
requ=EAte pour faire une liste d=E9roulante dans un formulaire=20
et je n'arrive pas.
Comment faire pour qu'ils soient les 3 les uns sous les=20
autres au lieur de les trouver les 3 les uns =E0 cot=E9 des=20
autres.
Merci pour votre aide.
Luis

2 réponses

Avatar
Gafish
Bonjour,

C'est parce que ta table ne répond pas aux formes normales de création d'une
base.
En général, on ne met pas x champs qui reprennent la même information.
Imaginons que demain il faut entrer quatre contacts, il faut que tu rajoutes
un champ, que tu modifies tes requêtes et tes modules... c'est lourd.
Ce qu'il faut faire, c'est une table client, une table contact, et entre les
deux une table qui les associe, en reprennant l'idClient et l'idContact.
Ainsi tu peux avoir une infinité de contacts pour un client.
Si tu peux modifier ta base de cette façon, je te conseille de le faire, ca
te prendra peut etre un peu de temps maintenant, mais en terme de
maintenance tu y gagneras beaucoup.

Arnaud

"Luis" a écrit dans le message news:
16b001c4a7bc$adf373c0$
Bonjour,
Dans une table Clients j'ai 3 champs contacts:
CONTACT1
CONTACT2
CONTACT3
NCLIENT
J'ai besoin de rassembler ces trois champs dans une
requête pour faire une liste déroulante dans un formulaire
et je n'arrive pas.
Comment faire pour qu'ils soient les 3 les uns sous les
autres au lieur de les trouver les 3 les uns à coté des
autres.
Merci pour votre aide.
Luis
Avatar
Luis
Bonjour,
Tu as raison car en créant une table
NCONTACT
NCLIENT
CONTACT

On peut avoir mil contacts.

Et créer une table c'est facile.
Le probleme c'est le nobre de requêtes et surtout que
cette base fonctionne et il y a 4'389 clients avec chacun
entre 1 à 3 contacts.
Alors le copier/coller entre tables.
Ou la resaisie, bonjour.
C'est parce que j'ai mal pensé la solution que je veux
éviter de tout refaire.
Mais je crois que c'est la seule solution.
Car dans le fond on n'a jamais eu plus de trois contacts
par clients donc si j'arrivais à reprendre la table telle
quelle et faire une requête avec les contacts, j'avais une
solution facile.
Je te remercie pour ton point de vue.
Luis
-----Message d'origine-----
Bonjour,

C'est parce que ta table ne répond pas aux formes
normales de création d'une

base.
En général, on ne met pas x champs qui reprennent la même
information.

Imaginons que demain il faut entrer quatre contacts, il
faut que tu rajoutes

un champ, que tu modifies tes requêtes et tes modules...
c'est lourd.

Ce qu'il faut faire, c'est une table client, une table
contact, et entre les

deux une table qui les associe, en reprennant l'idClient
et l'idContact.

Ainsi tu peux avoir une infinité de contacts pour un
client.

Si tu peux modifier ta base de cette façon, je te
conseille de le faire, ca

te prendra peut etre un peu de temps maintenant, mais en
terme de

maintenance tu y gagneras beaucoup.

Arnaud

"Luis" a écrit dans
le message news:

16b001c4a7bc$adf373c0$
Bonjour,
Dans une table Clients j'ai 3 champs contacts:
CONTACT1
CONTACT2
CONTACT3
NCLIENT
J'ai besoin de rassembler ces trois champs dans une
requête pour faire une liste déroulante dans un formulaire
et je n'arrive pas.
Comment faire pour qu'ils soient les 3 les uns sous les
autres au lieur de les trouver les 3 les uns à coté des
autres.
Merci pour votre aide.
Luis


.