我想让我的数据库受版本控制.有没有人有任何建议或推荐的文章让我开始?
我总是希望在那里至少有一些数据(如alumb提到的:用户类型和管理员).我还经常需要大量生成的测试数据来进行性能测量.
软删除是个好主意还是坏主意?
您只需将其标记为IsDeleted = true,而不是实际删除数据库中的记录,并且在恢复记录后,您可以将其标记为False.
这是一个好主意吗?
最好是物理删除记录,然后将其移动到存档数据库,如果用户想要记录回来,那么软件会在存档中查找记录并重新创建它吗?
我过去使用的一个简单方法基本上就是创建第二个表,其结构镜像我想要审计的表,然后在主表上创建更新/删除触发器.在更新/删除记录之前,当前状态将通过触发器保存到审计表中.
虽然有效,但审计表中的数据并不是最有用或最简单的报告.我想知道是否有人有更好的方法来审核数据变化?
这些记录的更新不应太多,但它是高度敏感的信息,因此对客户而言,所有更改都经过审核并易于报告,这一点非常重要.
我目前正在玩我的数据库中有一些表的历史表.基本上我有主表和该表的副本,其中包含修改日期和操作列,用于存储执行的操作,例如更新,删除和插入.
到目前为止,我可以想到三个不同的地方,你可以做历史表工作.
我的主要问题是,在每个层中完成工作的优点,缺点和缺点是什么.
我可以通过使用触发器方式来考虑的一个优点是,无论在数据库之上实现什么程序,都始终保持完整性.