sqlite - 删除未更新行的正确方法
问题描述
假设我们以上面的图表为例。一个人可以购买物品,一件物品可以被很多人购买。因此,由于它是 nn 关系,因此我有一个附加表,其中有一个附加列“数量”,表示一个人购买了多少包商品。
现在,假设有一个用户列表,显示他购买了多少物品,他可以删除、编辑现有物品和添加新物品。
我的问题是处理删除/更新功能的最聪明的方法是什么。在我看来,有两种选择:
- 删除一个人已购买的所有现有项目 (PersonWithItemAmount) 并插入列表中的所有项目
- 添加(onConflict=REPLACE)列表项并在回调中删除所有未插入/更新的所有项目,例如 deleteNotUpdatedItemsWithAmount(personId,List<> updatedIds)
我的两种方法都可以吗,还是有更简单/有效的解决方案?
解决方案
推荐阅读
- javascript - jQuery 获取 CUT 的值
- android - RxAndroidBLE 执行 BLE 扫描,无需排队扫描操作
- jquery - 如何将淡入淡出从滚动更改为元素?
- node.js - 错误 Promise.all
- c# - CefSharp 错误:执行“ExecuteScriptAsync”或“EvaluateScriptAsync”时出现“浏览器尚未初始化”
- c# - 使用 IPv4 地址和非管理员用户时,ServiceController 无法在 Windows 10 1709+ 上启动服务
- php - 显示 HTML 文本而不执行它
- swift - CIImage 转换为 UIImage
- reactjs - 用redux反应导航不起作用
- python - 为什么下面的代码会抛出 typeError?