我有一個1000萬記錄沒有索引的表,我試圖重複表格。我嘗試插入選擇使用左連接或不存在;但每次我都會收到違反密鑰的錯誤。另一個問題是日誌文件變得太大,事務將無法完成。我嘗試將恢復設置爲簡單,因爲建議在線,但這並沒有幫助。以下是我使用的查詢;SQL日誌文件越來越大
insert into temp(profile,feed,photo,dateadded)
select distinct profile,feed,photo,dateadded from original as s
where not exists(select 1 from temp as t where t.profile=s.profile)
這只是產生違規的關鍵錯誤。我嘗試使用以下物質:
insert into temp(profile,feed,photo,dateadded)
select distinct profile,feed,photo,dateadded from original as s
left outer join temp t on t.profile=s.profile where t.profile is null
在這兩種情況下,現在的日誌文件中的交易完成之前填滿。所以我的主要問題是關於日誌文件,我可以找出與查詢的重複。
我會嘗試這個 – vbNewbie 2012-03-28 15:22:45
有人告訴我,無論使用批處理的,我需要對源表這是我做的一個非聚集索引沒有,因爲它確實包含模糊。或者如何做到這一點呢? – vbNewbie 2012-03-28 15:52:22
索引不一定要是唯一索引 – HLGEM 2012-03-28 17:23:20