需要生成一些测试数据。这个插入是800,000 X 1,000。我知道很多,但这是一个真正的应用程序,随机数将是一个计算的数字。TSQL插入事务日志填充
我该如何分解这个事务日志不填满?
insert into sIDcrossMatch
select
docSVsys1.sID, docSVsys2.sID, Abs(Checksum(NewId())) % 100 As RandomInteger
from docSVsys as docSVsys1
join docSVsys as docSVsys2
on docSVsys1.sID <> docSVsys2.sID
where docSVsys1.sID < 1000
order by docSVsys1.sID, docSVsys2.sID
它将插入一个docSVsys1.sID
而不填写事务日志。
您意识到您将需要提供以每行20个字节提供12,8TB的存储空间吗?我认为你的方法**不会工作**,即使没有tlog问题。 – usr 2012-07-22 18:42:23
@marc_s,您提到了这一点,但是一个toooooo大事务(比最大可能的日志/磁盘大小“大”)不适合任何事务日志管理策略。猜猜布莱姆问如何克服这种情况。 – 2012-07-22 18:43:08
您还要存储对(a,b)和(b,a)。如果您不想这样做,请添加where条件'docSVsys1.sID
usr
2012-07-22 18:43:12