[問題] 處理資料庫時系統錯誤
各位前輩好:
小弟近日在處理一份約六百萬筆的資料(22個欄位),
因為還要對照另外一份文字檔名單上面的項目來對第一欄位做查詢,
名單上約兩萬個項目,也就是每個項目對應到約三百筆資料
我使用了SQL Server資料庫將上述資料匯入。
由於主要只有以第一個欄位作為查詢比對,其餘欄位均為數值需取出做運算,
故我只用了一個資料表儲存所有資料,資料庫檔案(mdf)約1GB大。
小弟利用C#撰寫程式來處理
但在DataAdapter要fill dataset的時候,
總是出現「系統錯誤」的訊息;
同時,系統的記憶體使用量也上升到1.2GB(我只有1024MB的實體記憶體)
我的寫法大致如下:
string connection = "workstation id=BLUE;packet size=4096;" +
"user id=sa;data source=BLUE;" +
"persist security info=True;" +
"initial catalog=myDB;password=XXXXX";
string command = "SELECT * FROM T1 WHERE Name = XXXXXX";
這裡我一次query 100個項目,所以XXXXX那邊是用迴圈串起來的
一堆 XXXX OR YYYY OR ZZZZ.......
System.Data.SqlClient.SqlDataAdapter myDA =
new SqlDataAdapter(command, connection);
DataSet myDS = new DataSet();
myDA.Fill(myDS);
錯誤訊息就是出現在上面這行程式碼,
我本來一直懷疑是否是因為一些語法上的錯誤導致的,
但是試過將資料匯入六成,使資料庫大小降至約700MB,
再run上述一模一樣的程式便跑得出來了!
請問各位先進,這到底是什麼樣的問題呢?
會是跟記憶體大小有關係嗎?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.37.137
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 3 篇):
C_Sharp 近期熱門文章
PTT數位生活區 即時熱門文章