初めまして。
早速質問なのですが、VB(6.0)でmdb(Access2000)のDBを更新する処理を作りました。
DAOを用いて(初めて使います)以下のような構文を作ったのですが、
性能がぱっとしません。
何か下記のソースをいじることで性能が改善するような手立てはありませんでしょうか?
----------------------------------------------------------------------
Sub Main()
Dim cDaoDB As DAO.Database
Dim cDaoWS As Workspace
Dim cColUpdate As Collection
Dim varColItem As Variant
Dim lngCnt As Long
Set cDaoWS = DBEngine.Workspaces(0)
Set cDaoDB = mDaoWS.OpenDatabase("C:\TEST.mdb")
'コレクションにデータをaddする処理は省略しています
cColUpdate.add
With cDaoDB
cDaoWS.BeginTrans
'cColUpdateコレクションには10万件ほどのSQL構文(Update構文)が格納されています
'10万回ほど繰り返し処理します
For Each varColItem In cColUpdate
lngCnt = lngCnt + 1
If lngCnt > 1000 Then
'データ量が多いため1000件ごとにコミットしています
cDaoWS.CommitTrans
cDaoWS.BeginTrans
lngCnt = 0
End If
strErrSQL = varColItem
'Update処理が繰り返し流れます。
.Execute varColItem
Next
.Close
cDaoWS.Close
End With
Set cDaoDB = Nothing
Set cDaoWS = Nothing
End Sub
----------------------------------------------------------------------
よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBAが止まります。 2 2022/09/02 14:02
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- Visual Basic(VBA) VBAが止まります。 3 2022/08/31 14:09
- Visual Basic(VBA) ExcelVBAに関する質問 3 2023/02/17 10:47
- Visual Basic(VBA) 複数のcsvファイルをExcelに一括変換したい 2 2023/03/03 12:44
- Visual Basic(VBA) 【VBA】写真の貼り付けコードがうまく機能しません。 5 2022/09/01 18:43
- Visual Basic(VBA) エクセルVBAのコードで質問です。 下のコードはJ16の文字列をB3を起点とする範囲から探して、見つ 5 2023/04/07 11:07
- Visual Basic(VBA) 【VBAエラー】Nextに対するForがありません 対策について 5 2022/11/21 21:26
- Visual Basic(VBA) VBAでoutlook365が起動しません。 4 2022/08/25 13:31
- Visual Basic(VBA) VBAが止まります。 1 2022/09/02 14:51
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
SQLの速度をあげるには・・・
Visual Basic(VBA)
-
Access クエリ実行が急に非常に遅くなりました。
Access(アクセス)
-
Accessのテーブルデータを一気にVBAで追加したい・・
その他(データベース)
-
-
4
ACCESSで一括処理する方法
その他(データベース)
-
5
AccessのDAO.ExecuteとDoCmd.RunSqlの違いについて
その他(データベース)
-
6
accessの処理が遅い
その他(データベース)
-
7
【Oracle】ADOでSELECT * FROM ・・・・ を実行すると処理が遅いんです
その他(データベース)
-
8
Access2000 フォーム表示位置が変わる
Word(ワード)
-
9
Accessのフィールド名に半角括弧を使ってしまった
Visual Basic(VBA)
-
10
Access2003 クエリで、空の列は作れますか?
Access(アクセス)
-
11
insertを高速化させたい
その他(データベース)
-
12
どこにもフォーカスを当てたくない
Access(アクセス)
-
13
Access 削除クエリが重い
その他(データベース)
-
14
Access終了時にマクロまたはVBAの実行したい
その他(Microsoft Office)
-
15
Access レポート印刷するときに1ページに収める方法
Access(アクセス)
-
16
Accessデータベースの最適化をExcelVBAでやりたい
その他(データベース)
-
17
Accessのテーブルを既存のExcelファイルへエクスポートしたいんですが
Access(アクセス)
-
18
アクセスをネットワークでリンクさせると非常に遅い!?
その他(データベース)
-
19
AccessのDAOでフィールド名を配列に格納して・・・
Visual Basic(VBA)
-
20
ADOを使ったDBアクセス後のメモリ解放
その他(データベース)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
[性能改善]AccessのDBに大量の...
-
RDBのテーブル種類の違い
-
同じSELECT文同士でのデ...
-
DELETE文でFROM句を省略した場合
-
他の処理でselectさせないよう...
-
処理が終わったり終わらなかっ...
-
stored procedureの引数について
-
トリガーにてUTL_FILEパッケー...
-
object browser で処理を中断す...
-
テーブル名を指定してCsv出力
-
INDEXの無効化
-
異なるスキーマからデータを抽...
-
データを削除しても表領域の使...
-
ORA-00959: 表領域'****'は...
-
datapumpの実行方法について
-
SQLでスキーマ名(所有者名)の...
-
INSERT時に発番を行いたい
-
テーブルからのselectにおいて...
-
oracle sqlで先頭の1件を取得
-
count(1)とcount(*)の違い
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
DELETE文でFROM句を省略した場合
-
他の処理でselectさせないよう...
-
RDBのテーブル種類の違い
-
accessでイベントを中止するよ...
-
同じSELECT文同士でのデ...
-
[性能改善]AccessのDBに大量の...
-
object browser で処理を中断す...
-
DBリンクエラーについて
-
PL/SQLの平行処理について
-
チューニング対象のSQLの見つけ...
-
年度毎にシーケンスの初期化?
-
統計情報の取得=コミットですか?
-
Access2013で操作ログを残した...
-
Oracleから見たOracleの優位性(...
-
ASPからのSQL文でエラーが発生
-
stored procedureの引数について
-
ActiveX DLLでのオラクルのトラ...
-
PL/SQLでmdb(Access)ファイルへ...
-
Oracleの欠点
-
OIP-04129: SELECT FOR UPDATE
おすすめ情報