#1064 - You have an error in your SQL syntax

Résolu
IEDfactory Messages postés 36 Date d'inscription   Statut Membre Dernière intervention   -  
 Utilisateur anonyme -
Bonjour à tous et merci d'avance pour vos retours éventuels,

Que je fasse cette requête
UPDATE 
ps_product_lang
SET 
description= REPLACE(description '1111 1111 111 (0,09 cts/min)', '22 22 22 22 22 (prix d\'un appel local)');


ou

UPDATE 
ps_product_lang
SET 
description= REPLACE(description '1111 111 111 (0,09 cts/min)', '22 22 22 22 22 (prix d\'un appel local)')
WHERE description LIKE '%1111 111 111 (0,09 cts/min)%'


ou

UPDATE 
ps_product_lang
SET 
description= REPLACE(description '1111 111 111 (0,09 cts/min)', '22 22 22 22 22 (prix d\'un appel local)')
WHERE description LIKE '%1111 111 111 (0,09 cts/min)%';


J'ai ce message d'erreur :
Erreur
Requête SQL :
UPDATE
ps_product_lang
SET
description= REPLACE(description '1111 111 111 (0,09 cts/min)', '22 22 22 22 22 (prix d\'un appel local)')
WHERE description LIKE '%1111 111 111 (0,09 cts/min)%'
MySQL a répondu: Documentation
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''1111 1111 111 (0,09 cts/min)', '22 22 22 22 22 (prix d\'un appel local)')
WHER' at line 4

Précision je suis sur MariaDB
Merci de vos retours !
A voir également:

3 réponses

jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Bonjour,

Commence par faire une requête du genre :
SELECT *
FROM ps_product_lang
WHERE description LIKE '%1111 111 111 (0,09 cts/min)%' 

et dis nous ce que ça te donne

=> Requête à faire DIRECTEMENT (via phpmyadmin par exemple) dans ta BDD

0
IEDfactory Messages postés 36 Date d'inscription   Statut Membre Dernière intervention  
 
Merci de ce retour !
Message : MySQL a retourné un résultat vide (aucune ligne). (Traitement en 0.2172 secondes.)
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Tu as un souci dans le replace je pense
description= REPLACE(description '1111 111 111 (0,09 cts/min)', '22 22 22 22 22 (prix d\'un appel local)')


A changer par
<code sql>
description= REPLACE(description , '1111 111 111 (0,09 cts/min)', '22 22 22 22 22 (prix d\'un appel local)')

</code>
0
Utilisateur anonyme
 
Bonjour

Tu as oublié une virgule entre description et '111...'
0
IEDfactory Messages postés 36 Date d'inscription   Statut Membre Dernière intervention  
 
Bon ! On avance ! en effet, avec la virgule j'ai un message :
0 ligne affectée. (Traitement en 0.1060 secondes.)

La sémantique est donc bonne ! je crois comprendre.

La chaîne de caractère est dans un code html et quand j'édite le champs dans la BD j'ai : 1111 1111 111 <em>(0,09 cts/min)

Je pense donc que bêtement je n'ai pas tenu compte de la syntaxe HTML !!!
0
IEDfactory Messages postés 36 Date d'inscription   Statut Membre Dernière intervention  
 
j'ai un doute sur la compréhension de ce que vous me dites....
syntaxe = commande bonne
sémantique = l'écriture de la chaîne de caractère à remplacer

C'est cela ?
0
Utilisateur anonyme
 
La syntaxe, c'est l'ensemble des règles à respecter pour écrire (ou parler) correctement un langage. La grammaire, en quelque sorte. Donc ici, oui c'est une erreur de syntaxe qui a été corrigée.
Je ne m'aventurerai pas à essayer de donner une définition correcte de la sémantique, disons qu'elle se rapporte à la signification de ce qui est écrit.
0
IEDfactory Messages postés 36 Date d'inscription   Statut Membre Dernière intervention  
 
OK on est d'accord, mais ma question était sur le code HTML qui est dans les champs de ma BDD...
0
Utilisateur anonyme
 
La question à laquelle j'ai répondu dans mon message #8 était celle posée à ton message 7, qui portait sur les définitions de deux mots.
Quant au fait que le replace ne fonctionne pas, il est évident que si la chaîne que tu lui dis de remplacer n'est pas dans ta BDD, il ne la remplace pas. D'après ce que tu montres, non seulement il y a une balise en plus, mais il y a aussi un '1'
0
IEDfactory Messages postés 36 Date d'inscription   Statut Membre Dernière intervention  
 
OK merci de vos conseils , je vais dans cette voie et reviens vers vous pour retour...
0