2

在 sqlite 中有一个ON CONFLICT用于插入和更新的子句,如果插入或更新导致密钥冲突,则允许您执行某些操作:http ://www.sqlite.org/lang_conflict.html

我想知道是否有可能(可能使用触发器)来模拟一个UPDATE ON CONFLICT DELETE子句,它是UPDATE ON CONFLICT REPLACE. 基本上,如果更新 rowX与预先存在的 row 产生冲突Y,我想删除 row X(因为它的未更新形式是错误的)。该REPLACE关键字似乎删除了所有Ys 然后添加了X。我需要保留该行的其他列(不冲突)Y,而不是新X行,所以我不能使用REPLACE.

4

1 回答 1

1

没有实现此算法的内置 ON CONFLICT 子句。

您必须在代码中实施重复检查和删除/更新。

于 2013-10-05T09:07:42.920 回答