什么是添加回软删除数据、创建新条目或恢复已删除数据的更好方法

问题描述 投票:0回答:1

我正在使用软删除从数据库表中删除条目。

如果我想再次添加相同的数据,更好的方法是:创建新条目或恢复已删除的数据?

第一种方法的唯一键约束行为是什么?

database unique-key soft-delete
1个回答
0
投票

如果您谈论的是像用户这样的东西,那么恢复数据将是正确且简单的,您可以在其中使用密码或其他一些身份验证方法来验证身份。但如果是另一张表,你无法确定真实身份,那么最好的方法是创建一个新条目。

另一种情况是您需要保留某种存档。一个例子:你有一个 Client 和一个具有 M:M 关系的 Contract 表,所以你创建了一个 bridge table,我们称之为 ContractClient,来存储数据并有一个 1:M 到那个桥表。因此,客户一次只能有一个有效合同,但该合同可以在以后终止,这将在数据库中“存档”,活动状态为 false。该客户将来可以拥有另一份合同,其活动状态为 true,一个且只有一个,但在数据库中,该客户以前的合同未被删除但存储起来供管理部门将来使用,请考虑数据挖掘或其他任何内容.在这种情况下,我们创建了一个新记录并且我们不编辑以前的合同,因为我们想要存档我们客户以前的合同活动。

总而言之,这取决于您要实现的用例或业务逻辑。在某些情况下,您可以重复使用以前的记录,而在另一些情况下则不应该。

© www.soinside.com 2019 - 2024. All rights reserved.