Zac*_*Zac 5 python psycopg2 amazon-web-services python-2.7 amazon-redshift
我正在使用psycopg2库从Python 2.7将记录插入到Amazon Redshift表中,我想找回为插入的行自动生成的主ID。
我尝试了使用Google搜索可以在这里或其他网站中找到的常用方法,例如:
conn=psycopg2.connect(conn_str)
conn.autocommit = True
sql = "INSERT INTO schema.table (col1, col2) VALUES (%s, %s) RETURNING id;"
cur = conn.cursor()
cur.execute(sql,(val1,val2))
id = cur.fetchone()[0]
Run Code Online (Sandbox Code Playgroud)
我在cur.execute行上收到错误消息:
ProgrammingError: syntax error at or near "RETURNING"
Run Code Online (Sandbox Code Playgroud)
有人知道如何解决此问题或完成同一件事吗?
我必须在代码中使用psycopg2
目前无法使用 Redshift,因为它不支持通过 RETURNING 语法返回最后一个插入 ID。您可能需要做的是SELECT MAX(id) FROM schema.table;
在事务中使用一个内部事务,这可能不是您想要听到的,但似乎是您对 Redshift 当前状态所能做的最好的事情。
归档时间: |
|
查看次数: |
1575 次 |
最近记录: |