MySql: difference int varchar

[Résolu/Fermé]
Signaler
-
Messages postés
350
Date d'inscription
vendredi 18 janvier 2008
Statut
Membre
Dernière intervention
11 juin 2009
-
Bonjour,

J utilise une base de donnees dans mon site (quel surprise au vu du titre). Plus serieusement je souhaite y supprimer des valurs dont la clef est entiere. Ma requete donne ça:

$sql='DELETE FROM recette WHERE key="'.addslashes($_GET['name']).'"';

name est de type int, et cela me retourne :

DELETE FROM comment WHERE key=8
You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'key=8' at line 1

Ce que je comprends c est que cela marche trs bien pour des varchar (tester).
Voila sinon j ai essayer d enlever les guillemets, le addslashes mais rien n y fait.
Quelqu un d'inspirer???
Merci par avance

4 réponses

en clair
les requetes suivanntes ne sont pas accepté pas mysql

DELETE FROM comment WHERE key = "8"
DELETE FROM comment WHERE key = 8
DELETE FROM comment WHERE key = '8'

C koi alors
Merci
personne n a une idée les gars!!!!
Tout le monde doit le faire pourtant....
Allez s il vous plait un petit effort
Merci a tous
C'est normal que cela ne marche pas.
Le premier where pose problème, car il est du type :
WHERE key="8"DELETE from ...

En effet, tu ne mets pas de ';' entre chaque requête.

Tu crois avoir 3 requêtes bonnes alors que tu en as qu'une, et mauvaise.

A+
Messages postés
350
Date d'inscription
vendredi 18 janvier 2008
Statut
Membre
Dernière intervention
11 juin 2009
252
Est-ce que 'key' est bien le nom de ta colonne identifiante ?
De quel type est cette colonne ?
(requête SQL 'DESCRIBE comment;' pour en être sûr, ou passer par phpmyadmin ou autre)