我一直在使用此页面来告诉我哪些插入选项应该和不应该导致最少的日志记录:http ://technet.microsoft.com/en-us/library/dd425070(v=sql.100).aspx
有没有办法验证在我运行查询后是否实际发生了最少的日志记录?
我一直在使用此页面来告诉我哪些插入选项应该和不应该导致最少的日志记录:http ://technet.microsoft.com/en-us/library/dd425070(v=sql.100).aspx
有没有办法验证在我运行查询后是否实际发生了最少的日志记录?
当然,您可以使用fn_dblog()
1根据 读取相关日志记录,并根据行数和值AllocUnitName
进行有根据的猜测。[log record size]
因此,执行您的操作(例如,在 的目标表上dbo.MyTable
),然后检查以下结果:
SELECT Operation, Context, [Log Record Length]
INTO #foo
FROM sys.fn_dblog(null, null)
WHERE AllocUnitName + '.' LIKE N'dbo.MyTable.%';
然后查询您在其中找到的数据#foo
(您通常会看到的排序运算符,如在此 MSDN 博客文章中,使此查询非常昂贵且耗时)。
和Log Record
5RowLog Contents x
列可能也很有趣,但不确定您要在逆向工程中投入多少精力。
1. 此功能不受支持且未记录。