Ich versuche Spalten zu einer Tabelle hinzufügen psycopg2
Pass Spaltenname als Parameter PostgreSQL mit psycopg2
row1
unter Verwendung ist eine Liste der Spaltennamen in der Tabelle hinzugefügt werden. Ich kann es manuell tun, aber wenn ich es programmatisch mache, erhalte ich einen Fehler.
for c in row1:
cur.execute("ALTER TABLE HHV2PUB ADD COLUMN %s text", (c,))
Der Fehler ist:
cur.execute("ALTER TABLE HHV2PUB ADD COLUMN %s text", (c,))
psycopg2.ProgrammingError: syntax error at or near "'HOUSEID'"
LINE 1: ALTER TABLE HHV2PUB ADD COLUMN 'HOUSEID' text
Meine Vermutung ist, dass es etwas mit den einfachen Anführungszeichen ''
dass einfache Anführungszeichen in ' 'HOUSEID'' (% s) das Problem –
@varchar sein sollte: Ja, und diese einfache Anführungszeichen gibt es, da die OP verwendet SQL-Parameter. –