我需要从sql server表中查看已删除的记录(行),实际上我正在使用此命令
DBCC LOG(MyDatabase,-1)
查看日志,但我不理解输出格式。
存在任何免费工具来翻译Sql server数据库的日志文件或任何文档如何解释命令DBCC LOG
我正在使用SQL Server 2008。
更新
我的目标是不恢复已删除的记录,我只是想看到已删除的记录或执行的删除命令。
提前致谢。
答案 0 :(得分:5)
您从DBCC LOG获取的数据是HEX格式,您需要转换它们才能变得可读。
您也可以尝试使用fn_dblog函数来读取事务日志,但是您将得到几乎相同的需要解码的结果。
还有第三方工具ApexSQL日志可以读取事务日志并显示所有已记录的命令,但它带有价格。
答案 1 :(得分:4)
虽然文档很少,但它可以作为学习练习来完成。我之前已经解码了删除的示例,以及日志中的更新和一些其他项目。
http://sqlfascination.com/2010/02/03/how-do-you-decode-a-simple-entry-in-the-transaction-log-part-1/
考虑到解释的长度,不适合在此处重新发布。
答案 2 :(得分:2)
这是一个分步指南,提供了所有SQL代码,用于使用未记录的SQL函数读取数据库联机事务日志fn_dblog