PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Erro de valor ao importar dados para a tabela postgres usando psycopg2


Dê uma olhada na documentação:

O espaço reservado para variáveis ​​deve ser sempre um %s , mesmo que um espaço reservado diferente (como um %d para inteiros ou %f para floats) pode parecer mais apropriado:
>>> cur.execute("INSERT INTO numbers VALUES (%d)", (42,)) # WRONG
>>> cur.execute("INSERT INTO numbers VALUES (%s)", (42,)) # correct

Enquanto, sua consulta SQL contém todos os tipos de espaços reservados:
"""INSERT INTO weather_data(temperature,humidity,wind,barometer,updated_on,place_id) 
   VALUES (%(temperature)f, %(humidity)f, %(wind)f, %(barometer)f, %(date)s, %(place_id)d)"""