PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

psycopg2 jak radzić sobie z TypeError:nie wszystkie argumenty są konwertowane podczas formatowania łańcucha

Argumenty sql, które przekazujesz do execute musi znajdować się w krotce lub liście, nawet jeśli jest tylko jedna z nich. Jest to odnotowane w dokumentacji:

W przypadku wiązania zmiennych pozycyjnych drugi argument musi zawsze być kolejnością, nawet jeśli zawiera pojedynczą zmienną. I pamiętaj, że Python wymaga przecinka, aby utworzyć krotkę pojedynczego elementu:

Musisz to zrobić w ten sposób:

ip ="127.0.0.1" 
sql="select count(*) from radacct where nasipaddress=%s"
cur.execute(sql, (ip,))



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Rails 4 session.id od czasu do czasu zero

  2. Jak uzyskać aktualną datę w PostgreSQL

  3. Transponuj wiersze SQL jako kolumny

  4. Jak utworzyć użytkownika tylko do odczytu w PostgreSQL

  5. Opcjonalna instrukcja INSERT w łańcuchu transakcji przy użyciu NodeJS i Postgres