線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:824
推到 Plurk!
推到 Facebook!

dbf轉入到MSSQL2000 速度慢,如何加速??

尚未結案
jeffreck
高階會員


發表:247
回覆:340
積分:197
註冊:2003-01-23

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-03-16 16:13:00 IP:61.218.xxx.xxx 未訂閱
請教各位前輩 dbf轉入到MSSQL2000 速度慢,如何加速?? 有多個*.dbf檔不定期要轉入到MSSQL中 目前使用For 方式一筆一筆寫入 可是速度太慢了是否有方法可以加速?? 程式如下:: function TDAA010.CopyDataSet(dtSource: TAdoQuery; dtTo: TAdoQuery): Boolean; var RecCount: Integer; CopyRec: Integer; FieldCount: Integer; CopyField: Integer; FieldName: string; upCount: Integer; begin RecCount := dtSource.RecordCount; FieldCount := dtSource.FieldCount; dtSource.First; for CopyRec := 0 to RecCount - 1 do begin dtTo.Append; for CopyField := 0 to FieldCount - 1 do begin FieldName := dtSource.Fields[CopyField].FieldName; // showmessage(FieldName); dtTo.fieldbyName(FieldName).Value := dtSource.fieldbyName(FieldName).Value; end; dtTo.Post; dtSource.Next; upCount := upCount 1; self.Label1.Caption :='資料轉入: ' inttostr(CopyRec); self.Update; if upCount > 1000 then begin upCount := 0; self.qry_SQL.UpdateBatch(); end; end; self.qry_SQL.UpdateBatch(); end; 謝謝各位前輩
pillar62
資深會員


發表:9
回覆:324
積分:271
註冊:2002-04-15

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-03-16 17:47:06 IP:210.64.xxx.xxx 未訂閱
你好 如果你的dbf欄位和要轉入的mssql的欄位一樣,那建議你可以使用mssql本身的匯入和匯出功能,裡面可以指定dbf檔!!試試看會不會比較快!! Pillar Wang
------
Pillar Wang
scotthsiao
高階會員


發表:13
回覆:324
積分:147
註冊:2005-02-01

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-03-16 18:15:58 IP:211.21.xxx.xxx 未訂閱
使用 SQL 的 INSERT INTO 的方式應該比 ADO 的 append post 還要快些 !!
系統時間:2024-06-02 18:34:43
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!