ProgrammingError:使用extras.execute_values在psycopg2更新查询中“,”处或附近的语法错误

时间:2018-12-28 11:16:04

标签: python postgresql sql-update amazon-redshift psycopg2

我正在尝试使用psycopg2.extras.execute_values模块更新Redshift表。下面是代码

from psycopg2 import extras
cur = con.cursor()

update_query = """update my_table
                  set gender = data.gender 
                  from (VALUES %s) as data (gender,firstname) 
                  where my_table.firstname = data.firstname
                  and my_table.gender is NULL"""

new_values = [("F","Charlene"),("F","BRITTANY")]

extras.execute_values (cur, update_query, new_values)

但是我遇到以下错误:

enter image description here

尝试了引号,双引号和方括号的各种组合,但没有运气。

TIA。

  • 罗汉

1 个答案:

答案 0 :(得分:0)

我回复晚了,但这是我得到的答案。

cursor.executemany().

我尝试进行了大量搜索,但自己始终没有找到解决方案。我正在使用 python。

更多详情请见以下网址。

  1. https://github.com/psycopg/psycopg2/issues/830
  2. https://zetcode.com/python/psycopg2/(cursor.executemany() 的详细用例)