需要生成一些測試數據。這個插入是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