
ACCESS2000でORACLEにリンクテーブルをはり、更新するプログラムを作成しています。
そこでADOでFINDコマンドを使用しているのですが、かなり遅く困っています。
どのようにすれば、早くロック付きの更新ができますでしょうか?
Set cn = Application.CurrentProject.Connection
Set rs = New ADODB.Recordset
cn.BeginTrans
rs.Open "テーブル名", cn, addopenkeyset, adLockOptimistic
rs.MoveFirst
strKey = "ankKey = 'aaa'"
rs.Find strKey
rs.ankA = "あ"
rs.Update
cn2.CommitTrans
キィを変えてLOOPさせ更新させていると
複数ステップのOLE DBの操作でエラーが発生しました。各OLE DBの状態の値を確認してください。作業は終了しませんでした。
のエラーになります。
1行1行みてみると異常にFINDが遅いものがあり、これが原因でないかと思うのですが、
どのようにロック付きの更新を変更すればいいのかがわかりません。
どのように変更すればいいのでしょうか?
No.1ベストアンサー
- 回答日時:
を参考にしてください。
更新処理を高速に処理したいのであれば、
SQLのUPDATEを使う方がよいです。
SQLでアップデートした場合はレコードセットを再度取得してくださいね。
レコードセットは参照には便利ですが、
更新系はちょっと遅いんです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
- Access(アクセス) DoCmd.SearchForRecord が動かない時の解決方法 3 2022/07/22 15:31
- Access(アクセス) 実行時エラー3131 FROM 句の構文エラーです について 7 2022/06/13 15:45
- Visual Basic(VBA) データベースから絞り込んでデータを読み込み 1 2023/02/21 19:51
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
- Visual Basic(VBA) findメソッドの変数について 6 2023/06/23 08:01
- Access(アクセス) docmd.gotorecordを起動するには 5 2022/06/17 15:20
- 国産車 ホンダフィット2代GE6に乗っていますが RSというのはスポーティーですか 1 2023/06/01 15:09
- Access(アクセス) アクセス テーブルの空白を変数に置換するボタンが作りたい 4 2022/07/08 11:19
- 電子マネー・電子決済 LINE Pay………朝口座に9千入ってて夕方確認したら RSランペイっていう変な名前で勝手に口座か 1 2022/09/05 17:39
このQ&Aを見た人はこんなQ&Aも見ています
-
Access200のFilterとFindの違い
その他(データベース)
-
ADOでアクセスのレコードに複数のフィルタをかけるには?
Access(アクセス)
-
insertを高速化させたい
その他(データベース)
-
-
4
ACCESSで値を代入できないとは?
Visual Basic(VBA)
-
5
【Oracle】ADOでSELECT * FROM ・・・・ を実行すると処理が遅いんです
その他(データベース)
-
6
ACCESSVBAのseekで複数INDEX検索方法について
Access(アクセス)
-
7
MS Accessでフォームの「開く時」と「読込み時」のイベントの違い
Access(アクセス)
-
8
ACCESSで一括処理する方法
その他(データベース)
-
9
Access サブフォームでの選択行の取得
その他(データベース)
-
10
Access VBA DB(先頭の0値を消す方法)
PowerPoint(パワーポイント)
-
11
Accessのリンク先を相対パスにしたい
その他(データベース)
-
12
Accessで検索を高速化
Access(アクセス)
-
13
dbOpenTableとdbOpenDynaset
その他(プログラミング・Web制作)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Accessの更新前処理について。D...
-
ACCESSのFindコマンドが遅い
-
Access VBA
-
ADOでループすると1レコードず...
-
「更新に必要なキー列の情報が...
-
Access2003でのテーブルの有無確認
-
Excel 2019 のピボットテーブル...
-
「直需」の意味を教えてください
-
Accessでテーブル名やクエリ名...
-
エクセルVBAで5行目からオート...
-
Oracle 2つのDate型の値の差を...
-
SQLServer2005のSQL文での別名...
-
テーブルの存在チェックについて
-
変数が選択リストにありません
-
INSERT INTO ステートメントに...
-
ACCESSのクエリで集計で、先頭...
-
ワードで4段組みで文章を書い...
-
Accessでテーブルの値をテキス...
-
SQLで条件指定結合をしたいがNU...
-
「失注」の意味を教えてくださ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
access2000でつまづいてます
-
「更新に必要なキー列の情報が...
-
Accessの更新前処理について。D...
-
access count数を変数に格納
-
[Access]削除時のエラーメッセ...
-
Access2003でのテーブルの有無確認
-
access vbaでクエリデータの中...
-
ACCESSのFindコマンドが遅い
-
AceessVBA 非同期処理について
-
ADOでループすると1レコードず...
-
Set rst = db.OpenRecordset("S...
-
レコードのロックについて
-
Access VBAで自動連番を振るには
-
VB2010のSQLを使ったレコードカ...
-
HerokuのDBへのinsert方法
-
Access VBA
-
フォーム内で複数のレコードを表示
-
テーブルの削除
-
adoのWHERE句 クエリだとフィ...
-
ACCESS、EXCELの限界?
おすすめ情報