首先,我知道一般情況下有大量的寬列是一個壞主意,但這是我被限制的格式。是否有解決SQL Server中8k行長限制的方法?
我有一個應用程序,在操縱它們並在數據庫中插入/更新值之前,將CSV文件導入臨時表。登臺表隨即創建,具有可導入文件的可變數量的NVARCHAR列,以及用作行ID的兩個INT列。
我必須導入的一個特定文件大約450列寬。由於在一個大的NVARCHAR列中使用了24字節的指針,所以我的計算結果總計達到了10K左右,並且我得到了錯誤Cannot create a row of size 11166 which is greater than the allowable maximum row size of 8060.
有沒有解決這個問題的方法,或者是我唯一的選擇修改導入器來分割導入或從文件中刪除列?
看看SSIS。 http://www.microsoft.com/en-us/sqlserver/solutions-technologies/enterprise-information-management/integration-services.aspx它將允許您讀取CSV並過濾並將行拆分爲不同的目標表。 – flup 2013-05-08 10:35:38
沒辦法。如果您在離線LOB驅逐後實際創建了一行+ 8k,那麼您的運氣不佳。 – 2013-05-08 10:58:49
創建兩個或更多表格,並在與該鍵鏈接的這些表格周圍插入450列。 – Max 2013-05-08 13:09:03