sql >> Databáze >  >> RDS >> Mysql

AttributeError:objekt 'tuple' nemá žádný atribut 'encode' - MySQLdb Python

Parametry dotazu by měly být předány jako druhý parametr do execute() :

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

Všimněte si, že nepotřebujete jednoduché uvozovky kolem %s zástupný symbol – ovladač databáze by je v případě potřeby vložil automaticky v závislosti na typu parametru dotazu.




  1. pg_stat_activity - jak zobrazit aktuální aktivitu uvnitř běžící uložené procedury

  2. Spouští klauzule MySQL IN poddotaz vícekrát?

  3. Entity Framework vytvoří název tabulky v množném čísle, ale pohled očekává singulární název tabulky?

  4. PDO bindParam neumožňuje příkazu vrátit výsledky