我正在开发一个跟踪和处理工单/工单的应用程序。每个票证都通过一个外键链接到创建/拥有票证的用户,该外键级联 MySQL 中的任何更改。显然,如果用户出于某种原因删除了他们的帐户,我们仍然希望保留他们的票证和基本信息的记录。
想到的第一种方法是在用户表中设置一个列,表示他们是活动的还是非活动的,即删除与否。这样,当他们关闭/删除他们的帐户时,他们只是翻转这个值,然后就无法访问该应用程序。
我的另一个想法是在删除帐户时将用户记录移动到已删除的用户表中。这种方式可以将 users 表的性能保持在最佳状态,当它变大时可能会很重要,但会添加额外的查询来移动记录。
显然,这可能是偏好的一部分,但我对性能方面很感兴趣。本质上,问题是选择查询与插入查询相比如何,以及在什么时候通过添加插入查询(将记录移动到已删除的用户表)来提高整体性能?