Partage
  • Partager sur Facebook
  • Partager sur Twitter

[Python] (1064, SQL syntax error)

Sujet résolu
    18 novembre 2019 à 16:43:13

    Je viens tout juste de commencer à utiliser MySQL avec Python, et j'ai cette erreur sur ma requête :

    pymysql.err.ProgrammingError: (1064, '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 \'WHERE server_id="559000786655379457"\' at line 1')

    Est-ce que quelqu'un peut m'aider et m'éclairer sur ce sujet ?

    • Partager sur Facebook
    • Partager sur Twitter
      18 novembre 2019 à 16:46:07

      Bonjour,

      Si tu ne nous donnes pas le code qui génère cette erreur cela va être compliqué de t'aider ...

      Apparemment tu utilises un \ mal placé dans ta requête.

      • Partager sur Facebook
      • Partager sur Twitter
      Seul on va plus vite, ensemble on va plus loin ... A maîtriser : Conception BDD, MySQL, PHP/MySQL
        18 novembre 2019 à 17:05:33

        Bonjour,

        Je n'utilise pas de \ dans mon code, donc c'est encore plus bizarre...

        import pymysql.cursors
        
        # Connectez- vous à la base de données.
        connection = pymysql.connect(host='ip',
                                     user='user',
                                     password='pass',
                                     db='name_db',
                                     cursorclass=pymysql.cursors.DictCursor
                                     )
        
        print("Connect successful !!")
        
        try:
            with connection.cursor() as cursor:
                # SQL
                sql = 'SELECT prefix WHERE server_id="559000786655379457"'
                # Exécutez la requête (Execute Query).
                cursor.execute(sql)
                print("cursor.description: ", cursor.description)
                print()
                for row in cursor:
                    print(row)

        Et voici donc mon code.

        • Partager sur Facebook
        • Partager sur Twitter
          18 novembre 2019 à 17:16:03

          Gugu7264 a écrit:

          Je n'utilise pas de \ dans mon code

          Au temps pour moi ... c'est dans le message Pyhton que les apostrophes sont échappés avec des \.

          Gugu7264 a écrit:

          SELECT prefix WHERE server_id="559000786655379457"

          Il manque la clause FROM ... d'où l'erreur au WHERE ...

          La clause FROM sert à préciser dans quelle table tu vas chercher les colonnes demandées dans la clause SELECT. Et ce avant le WHERE ...

          -
          Edité par Benzouye 18 novembre 2019 à 17:19:55

          • Partager sur Facebook
          • Partager sur Twitter
          Seul on va plus vite, ensemble on va plus loin ... A maîtriser : Conception BDD, MySQL, PHP/MySQL
            18 novembre 2019 à 17:24:25

            Ah oui, grand merci à toi ! Je n'avais pas fais attention au FROM, alors qu'il est indispensable !
            • Partager sur Facebook
            • Partager sur Twitter

            [Python] (1064, SQL syntax error)

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown