Sql server 如何查看表插入的历史记录?

Sql server 如何查看表插入的历史记录?,sql-server,Sql Server,是否有方法查看SQL Server数据库特定表中插入的历史记录或任何其他信息?除非您使用触发器在某处记录此信息,否则您需要某种方法查看事务日志中的信息。有像Lumigent这样的商业工具可以实现这一点。您可以使用触发器 在表上创建触发器(监视插入、更新和删除)。触发器将插入另一个表(历史记录表) 不过,这会增加额外的开销,所以我不会在更新非常频繁的表上这样做 请看一个如何实现这一点的示例 有一些代码为您生成审计跟踪代码 关于使用触发器执行此操作。除了使用触发器之外,还可以执行类似于添加名为“In

是否有方法查看SQL Server数据库特定表中插入的历史记录或任何其他信息?

除非您使用触发器在某处记录此信息,否则您需要某种方法查看事务日志中的信息。有像Lumigent这样的商业工具可以实现这一点。

您可以使用触发器

在表上创建触发器(监视插入、更新和删除)。触发器将插入另一个表(历史记录表)

不过,这会增加额外的开销,所以我不会在更新非常频繁的表上这样做

请看一个如何实现这一点的示例

有一些代码为您生成审计跟踪代码


关于使用触发器执行此操作。

除了使用触发器之外,还可以执行类似于添加名为“InsertedDate”的列并在其中记录当前日期的操作。但这需要通过存储过程进行插入

如果您使用的是SQL Server 2008,则可以使用新的更改数据捕获功能。这使您不必在所有表上写入触发器。

对于2005年使用触发器,对于2008年,您可以使用

是您所引用的事务日志,它与运行DBCC日志({Table},type=[1 | 2 | 3 | 4])访问的事务日志相同,不需要存储过程。如果您这样做,最好是使用约束始终输入当前日期。SQL server的哪个版本?数据库在2005年运行。