如何使用 psycopg2 指定列名

How do you specify column names with psycopg2

我有一个 SQL 语句,例如:

INSERT INTO my_table (col1, col2, col3) VALUES (1,2,3)

我正在使用psycopg2插入数据如下:

 cur.execute(
        sql.SQL("INSERT INTO{} VALUES (%s, %s, %s)").format(sql.Identifier('my_table')),[1, 2, 3]
        )

不过我不知道如何在插入语句中指定列名?上面的sql.sql是“假设”1,2,3的顺序是col1,col2,col3。例如,有时当我想说仅插入 col3 时,我将如何使用 sql.sql?

指定列名

execute 只是执行 SQL 代码,因此您可以按照标准 PostgreSQL INSERT statement 提及列,例如

INSERT INTO TABLE_ABC (col_name_1,col_name_2,col_name_3) VALUES (1, 2, 3)"