MySql: difference int varchar

Résolu
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

  1. 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)
    1. 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+
      1. 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
        1. 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