|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : décembre 2007 Messages : 13 ![]() |
Bonjour,
J'ai une table contacts qui contient notamment les informations suivantes Civilite|Nom|Prenom|Num|CodeClient M.|Nom1|Prenom1|1|Client1 Mme|Nom2|Prenom2|2|Client2 ... Le champ Num est un compteur pour identification du contact. Nous sommes en train de refaire notre site Internet et nous allons laissé la possibilité au client de rajouter de nouveaux contacts. Je me retrouve donc avec des enregistrements avec num=0 Civilite|Nom|Prenom|Num|CodeClient M.|Nom1|Prenom1|1|Client1 Mme|Nom2|Prenom2|2|Client2 Mme|Nom3|Prenom3|0|Client3 Mme|Nom4|Prenom4|0|Client4 J'aimerai avoir une requete qui me permette de mettre à jour le champ num avec la bonne information et donc d'avoir M.|Nom1|Prenom1|1|Client1 Mme|Nom2|Prenom2|2|Client2 Mme|Nom3|Prenom3|3|Client3 Mme|Nom4|Prenom4|4|Client4 J'ai vu des choses avec Fetch ou l'utilisation de la fonction WHile mais je bloque pour mettre à jour le champ Num en incrémentant la valeur. Merci par avance pour votre aide. Cdlt Pascal |
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : décembre 2007 Messages : 13 ![]() |
Je ne peux pas modifier la structure de la table contact car c'est une table lié à l'ERP. Si je change la structure, les mises à jour de l'ERP pourraient ne pas passer.
Je pense que c'est fetch qu'il me faut mais j'ai toujours des soucis pour l'écriture de la requête. |
|
|
00
|
|
|
#4 | ||
![]() ![]() ![]() David BARBARINExpert SQL Server Inscription : août 2005 Messages : 3 725 ![]() |
Pourquoi ne pas utiliser ROW_NUMBER() (si vous êtes au moins en sqlserver 2005) :
Code :
|
||
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : décembre 2007 Messages : 13 ![]() |
Désolé mais je suis en SQL Server 2000
|
|
|
00
|
|
|
#6 | ||
![]() ![]() ![]() David BARBARINExpert SQL Server Inscription : août 2005 Messages : 3 725 ![]() |
Avec 2000 :
Code :
|
||
|
00
|
|
|
#7 | ||
|
Invité de passage
![]() Inscription : décembre 2007 Messages : 13 ![]() |
Merci pour ton aide mikedavem
Ca fonctionne avec l'exemple mais si j'ai plusieurs contacts avec le même codeclient il ne m'incrémente pas le n°. Et quid de la mise à jour de ces infos dans la table. Après d'autres recherches j'ai procédé de la facon suivante. Je ne sais pas si c'est très académique mais ca fonctionne. Code :
|
||
|
|
00
|
|
|
#8 | ||
![]() ![]() ![]() David BARBARINExpert SQL Server Inscription : août 2005 Messages : 3 725 ![]() |
Dans ce cas il faut ajouter un prédicat de plus dans la sous requête. Ici je suppose que 2 personnes ne peuvent pas avoir le même nom pour un contact donné mais vous pouvez changer cela en fonction de vos besoins.
Code :
|
||
|
00
|
Copyright © 2000-2012 - www.developpez.com