Mysql
 sql >> Datenbank >  >> RDS >> Mysql

AttributeError:'tuple'-Objekt hat kein Attribut 'encode' - MySQLdb Python

Die Abfrageparameter sollten als zweiter Parameter an execute() übergeben werden :

cursor = self.conn.cursor() 
query = "SELECT name FROM TABLENAME WHERE id = %s"
cursor.execute(query, (str(id.decode('unicode_escape').encode('ascii', 'utf-8')), ))

Beachten Sie, dass Sie die einfachen Anführungszeichen um den %s nicht benötigen Platzhalter - der Datenbanktreiber würde sie je nach Abfrageparametertyp bei Bedarf automatisch einfügen.