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