Page 1 sur 1
problem de requete
Posté : 26 mars 2007, 11:55
par ours-blanc-
salut j'ai un probleme avec une requete.
Je voudrais dans ma base remplacé toutes les valeurs égales à aliments dans un champ par viande.
voila ce que j'ai ecris:
Code : Tout sélectionner
REPLACE INTO `nutrition-santé` ( `catégorie` )
VALUES (
`viande`
)
WHERE (
`catégorie` = "aliments"
)
mais ca ne marche pas. j'ai essaye avec insert aussi mais ca veut pas non plus.
j'ai mis qu'un champ catégorie dans replace into mais il y en a d'autres dans ma table aussi, je ne sais pas si c'est correct
si vous pouvez m'aider ca m'interesse

merci!
Posté : 26 mars 2007, 12:14
par guilt92
bonjour,
personnellement je recommande l'usage de la fonction UPDATE...
Code : Tout sélectionner
"UPDATE nutrition-santé
SET catégorie= 'viande'
WHERE catégorie= 'aliments'"
ceci dit le problème ne vient peut être pas de la...
Posté : 26 mars 2007, 12:15
par zeus
Pour entourer du texte, on utilise ' et non `
D'une manière générale, je décourage fortement l'utilisation de ` autour des colonnes :
- Cette syntaxe est propre à MySQL et ne fonctionne pas sous d'autres SGBD.
- cette syntaxe permet d'utiliser des noms de colonnes non standards (avec des espaces, avec des accents, ...) qui risquent, un jour ou l'autre de poser des soucis
Dans le but de t'épargner des soucis à venir, je te déconseille donc d'utiliser `tout court. Comme ça, tu sais tout de suite si tes noms de champs sont valides ou non
PS : attention, PhpMyAmin utilise ces `. Exemple à ne pas suivre ...
Posté : 26 mars 2007, 13:19
par ours-blanc-
merci bien, ca marche avec update.
PAr contre je comprends pas bien, sous php myadmin les ` sont obligatoires apparemment. j'ai teste avec des ' et ca passait pas. alors ma question est :
si j'utilise les ' et pas les ` ca passera sous mysql mais pas avec php myadmin?
merci
bonne journée
Posté : 26 mars 2007, 14:28
par zeus
Quand tu met des accents dans le nom de tes tables, l'utilisation de `est nécessaire pour que mysql retrouve le nom.
PhpMyAdmin utilise ces quotes par défaut.
PhpMyAdmin ne fait qu'encapsuler la construction de requête MySQL.
Posté : 26 mars 2007, 18:04
par ours-blanc-
ok merci
