在数据库中,我有多个问题的答案值:
问题1 -> 答案1 答案2
问题2 -> 答案3 答案4 答案5
--
现在用户提交了对这些答案的更新:
问题1 -> 答案1 答案2 答案6
问题2 -> 答案3 答案4
--
那么,做出这些改变的最佳方式是什么?我需要删除丢失的条目,添加新条目而不删除旧值。
最简单的方法是删除所有旧答案并编写新答案。但我的系统具有软删除功能,因此删除的条目并未真正删除,只是标有删除日期。如果我这样做,数据库表增长得非常快,因为每次用户进行更新时它都会写入数十个新条目。
我能想到的另一种方法是分两次迭代进行:第一次将保存的值与新值进行比较,如果找不到匹配则删除保存的值。第二次迭代将新值与旧值以及缺少的所有内容进行比较。
但也许还有更实用、更有效的方法呢?
侃侃尔雅