PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

psycopg2 come gestire TypeError:non tutti gli argomenti sono stati convertiti durante la formattazione delle stringhe

Gli argomenti sql che passi a execute deve essere in una tupla o in una lista, anche se ce n'è solo una. Questo è indicato nella documentazione:

Per l'associazione di variabili posizionali, il secondo argomento deve essere sempre sequenza, anche se contiene una singola variabile. E ricorda che Python richiede una virgola per creare una tupla a elemento singolo:

Quindi devi farlo in questo modo:

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