【发布时间】:2016-01-23 06:43:03
【问题描述】:
我已经阅读了很多资源(ao.1、2),但我无法让 Postgresql 的 ON CONFLICT IGNORE 行为在 sqlalchemy 中起作用。
我使用this accepted answer 作为基础,但它给出了
SAWarning: Can't validate argument 'append_string'; can't locate any SQLAlchemy dialect named 'append'
我尝试将 postgresql 方言添加到 @compile 子句,重命名我的对象,但它不起作用。
我也尝试使用str(insert())+ " ON CONFILCT IGNORE" 没有结果。 (顺便说一句,这并不奇怪)
如何将On CONFLICT IGNORE 添加到我的插入中?我喜欢建议的解决方案,因为我可以看到自己不希望每个 INSERT 上的 IGNORE 行为
ps。使用 python 2.7(不介意升级到 3.4/3.5),最新的 sqlalchemy (1.x)
【问题讨论】:
-
您应该提供示例代码,因为如果您提到的这个接受的答案对您有用(您测试过吗?测试一下!)将 UPDATE 更改为 IGNORE 也应该有效,否则您有错字。但如果你提到的代码也不起作用,你可能还有其他问题。
标签: python sql postgresql sqlalchemy