解决SQLServer记录修改追踪和恢复的方案计算机等级考试

文章作者 100test 发表时间 2010:01:01 08:28:28
来源 100Test.Com百考试题网


  在开发过程中中,可能很多人都遇到这样客户要求:使用者操作数据库关键记录时要记录使用者的ID,时间,修改的内容等,在必要的情况下要回滚到某一时刻的记录内容。本文将介绍两种解决此问题的方案:
  1.数据表冗余记录法
  在关键的数据库表中,加入 "创建时的日期时间"、"创建用户"、"修改或删除时的日期时间"、"修改或删除用户"、"记录状态" 等字段,当然了字段名可以简化,这里为了更好的说明。“记录状态”包括“当前可用”和“存档”两种状态。当用户修改记录时,要执行两步操作 1).更新当前数据库记录,记录修改者和时间,把“记录状态”改成“存档”。2)新建一条记录,把修改者和时间作为创建者和时间存入,保存新的记录内容,而“记录状态”为“当前可用”。 如果用户删除记录,只是执行第一步操作即可。
  这种方案可以用程序在前台方便的察看记录修改历史情况,并可以很容易的回滚到“某一时刻”,这里的回滚不是真正的回滚,仍然要在表里新建记录,和上面提到的修改记录操作相同,只不过记录的内容是“某一时刻”的内容而已。来源:考的美女编辑们
  使用这种方法会造成数据库表中记录的过多存储,在查询和统计时性能会有影响。

  编辑特别推荐:

  计算机三级的四个类别看看你适合哪个
  2.新建数据表记录操作
  在数据库中为关键数据表建立对应的“操作记录表”,所有对关键记录的修改、删除甚至读取都可以记录在“操作记录表”中,具体的实施可以在程序代码中控制,但更好的方法是可以使用触发器控制。
  这种方案也可以在前台方便的察看记录修改历史情况,并可以很容易的回滚。



相关文章


垂死之龙变G龙计算机等级考试
1.7GHzP4电脑性能大曝光计算机等级考试
个人装机按需选择CPU计算机等级考试
SQLServer中利用水平分区创建表计算机等级考试
解决SQLServer记录修改追踪和恢复的方案计算机等级考试
讲解SQL2000的Collection排序规则计算机等级考试
MMC不能打开文件SQLServerEnterpriseManager.MSC的解决方法计算机等级考试
老鸟经验之谈刷坏BIOS后的2种恢复方法计算机等级考试
装机可别忽视显卡计算机等级考试
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛