PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

erreur psycopg, la colonne n'existe pas

Vous devez utiliser des guillemets simples dans la requête.

J'ai reçu le même type d'erreur de ce

cur.execute('insert into my_table(id, name, horse_type, horse_code, horse_name) values(default, %s, 3, %s, "Mary Wonder")', [e[0], e[1]])

il a produit

Traceback (most recent call last):
File "process_horse.py", line 11, in <module>
[e[0], e[1]])
psycopg2.ProgrammingError: column "Mary Wonder" does not exist
LINE 2: ', "Mary Wonder")
       ^

Évidemment, ce sont des données, pas un nom de colonne, comme vous l'avez dit.
Quand je l'ai changé en

cur.execute("insert into my_table(id, name, horse_type, horse_code, horse_name) values(default, %s, 3, %s, 'Mary Wonder')",[e[0], e[1]])

cela a fonctionné sans erreur.