存入 SQL 發生錯誤 |
缺席
|
P.D.
版主 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
請問各位! 有一個棘手的問題, 可能會遇到的人不多 我的 M$SQL其中一個資料庫的其中一個資料表內儲500,000,000筆記錄,
檔案為8G, log之前我已處理過剩1G
有PRIMARY KEY
我現在要把資料透過www方式回存到server上(資料在遠端的db檔中), 如果出現 "無法配置空間給資料庫 'EPA' 的物件 'ADDR',因為 'PRIMARY' 檔案群組已滿。" 的錯誤, 當然資料並沒有進去 以下是簡略的程式
ADOquerycust.SQL.Text:= '.....' ADOquerycust.Open; while not Table_cust.eof do begin ADOquerycust.Edit; ADOquerycustNAME.Value:= Table_custNAME.Value; ADOquerycustSEX.Value:= Table_custSEX.Value; ..... ADOquery.Post; Table_cust.Next; end; ADOquery.batchupdate(arAll) 我也試過 while not Table_cust.eof do begin ADOquerycust.Edit; ADOquerycustNAME.Value:= Table_custNAME.Value; ADOquerycustSEX.Value:= Table_custSEX.Value; ..... ADOquery.Post; ADOquery.batchupdate(arCurrent) Table_cust.Next; end;都會造成這個問題, 但我有另外一個資料表大約只有1G大小, 利用上述 兩種做法都不會有問題, 這是M$SQL的極限了嗎? 發表人 - P.D. 於 2003/04/08 11:43:27 |
ko
資深會員 發表:28 回覆:785 積分:444 註冊:2002-08-14 發送簡訊給我 |
|
P.D.
版主 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
引言: P.D. 你好: 是否是遠端的資料庫沒定義資料表中關聯,所以沒辦法配置1.資料庫沒有任何關聯, 是一個獨立的資料表 2.資料庫中各一份資料表, 一份 8G, 一份 1G, 8G的存不進去, 1G的可以 3.我所使用的程式寫法兩者完全一樣, 差別在 select ... form xxx 不一樣 4.我也試過我自己的SQLserver(不同電腦, 但同資料庫,表), 同一資料表我的 只有2G容量, 也可以存入, 所以我才說是否8G對SQL是一個極限或者是更低? 發表人 - P.D. 於 2003/04/08 21:38:55 |
Mickey
版主 發表:77 回覆:1882 積分:1390 註冊:2002-12-11 發送簡訊給我 |
|
P.D.
版主 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
|
Mickey
版主 發表:77 回覆:1882 積分:1390 註冊:2002-12-11 發送簡訊給我 |
|
P.D.
版主 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
|
Mickey
版主 發表:77 回覆:1882 積分:1390 註冊:2002-12-11 發送簡訊給我 |
|
P.D.
版主 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
引言: maxsize=unlimited 為何無效 , 原因不明 建議先將它改成限定極大值(文件說 class="code"> use master go alter database [DatabaseName] modify file (name=[Databasename]_Data,maxsize=16GB) go 資料庫種類繁多, 記得先說用啥資料庫喔Mickey 版主: 我按你說的在 T-SQL中執行過上述命令 我的下法 use master go alter database CUST modify file (name=CUST_Data,maxsize=16GB) go 執行成功後, 我再試仍然無效! (改到32GB也一樣), 真是令人喪氣! |
P.D.
版主 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
補充一下, 我再查了原來的 SQL 資料庫的設定, 發現
在內容->資料檔案->已配置空間 8002(已使用8002)
檔案大小上限(不限) 我嘗試直接修改上面 8002的配置, 結果 SQL 告知
錯誤 5149: MODIFY FILE 發生作業系統錯誤 112(磁碟空間不足)於嘗試擴充實體檔案時。 (我調為 9000)
不論我調多少(甚至調 8003)都一樣, 我想問題應該是發生在這裡
因為配置8002, 已使用 8002, 所以資料無法再存入, 除非能擴充配置
PS:我的硬碟為RAID 5, 一共240G(80G*4台), 容量絕對沒有問題! 我先依版主的意思, 再新增一個資料檔(第二個檔案為 NDF), 這樣目前是
可以解決問題, 也就是在存入時不再有群組已滿的現象, 我猜想可能是WINDOW系統的限制吧! 原先我的檔案只有4G, 後來又用
大量匯入方式進了30,000,000進去就達到 8G, 然後從此就無法再存入
(連LOG檔都有4G)
|
Mickey
版主 發表:77 回覆:1882 積分:1390 註冊:2002-12-11 發送簡訊給我 |
|
P.D.
版主 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |