probleme requete UPDATE

chris2000
Invité n'ayant pas de compte PHPfrance

19 avr. 2016, 15:47

Bonjour,
Je voudrais mettre à jour , tous les colonnes d'une table directement sur phpmyadmin.
cependant il y plus de 5000 articles à mettre à jour.
c'est une table ' pss_product ' , avec son champs 'active' et je voudrais modifier que la valeur du champs 'active' de tous les enregistrements .
j'ai essayé

UPDATE `pss_product` SET `active` VALUES
(1),
(1),
(1),
(1),
(0),
(1),
(1),
(1),
(1),
(1),
(1)
....
(1);


mais cela me renvoi un message d'erreur sur la requete,
merci de votre aide

Mammouth du PHP | 2703 Messages

19 avr. 2016, 15:53

une solution :
UPDATE `pss_product` SET `active`=1 where id in (123,245,456)
UPDATE `pss_product` SET `active`=0 where id in (1234,2454,4564,4589)

chris2000
Invité n'ayant pas de compte PHPfrance

19 avr. 2016, 15:59

merci de la reponse

vous dites d'indiquez chaque id de produit
mais il y a plus de 5000 produits #-o
çà prendrait un temps fou,
y aurait pas une autre solution?

Mammouth du PHP | 2703 Messages

19 avr. 2016, 16:13

guère plus que de mettre des 0 et des 1 à la suite les uns les autres.
de phpmyadmin, afficher les id et les champs nécessaires, copier/coller dans un tableur, changer le champ active, trier selon ce champ active, et construire automatiquement la chaine pour fabriquer la requete.

chris2000
Invité n'ayant pas de compte PHPfrance

19 avr. 2016, 16:17

merci ,
mais j'ai la liste des 0 et 1 des plus de 5000 produits, à la suite je l'ai recuperer de l'ancienne base de donnée.

Mammouth du PHP | 2703 Messages

19 avr. 2016, 16:29

si tu as aussi les id, alors quelques manipulations et tu as de quoi construire les 2 requetes.

chris2000
Invité n'ayant pas de compte PHPfrance

19 avr. 2016, 16:32

le probleme , c'est que les id ne correspondent pas
et je ne saurais pas faire la requete , sinon je ne serais pas venu demander de l'aide ici

Mammouth du PHP | 2703 Messages

19 avr. 2016, 16:34

si tu fais
select id from pss_product
tu n'as pas les id dans l'ordre de tes 0 et 1 ?

chris2000
Invité n'ayant pas de compte PHPfrance

19 avr. 2016, 16:40

non d'un coté j'ai la liste des 0 et 1 dans l'ordre et de l'autre la base de donné avec les id qui correspondent pas à l'ancienne et que des 1

chris2000
Invité n'ayant pas de compte PHPfrance

20 avr. 2016, 13:44

ou comment puis ecrire cette requete pour modifier tout d'un coup?

chris2000
Invité n'ayant pas de compte PHPfrance

20 avr. 2016, 13:47

j'ai essayé cela , mais cela ne fonctionne pas :cry:

Code : Tout sélectionner

UPDATE `pss_product` SET `active` VALUES (1), (1), (1), (1), (0), (1), (1), (1), (1), .... + les 5000 autres ;