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も見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
SQLの速度をあげるには・・・
Visual Basic(VBA)
-
Accessで検索を高速化
Access(アクセス)
-
【Oracle】ADOでSELECT * FROM ・・・・ を実行すると処理が遅いんです
その他(データベース)
-
-
4
Access200のFilterとFindの違い
その他(データベース)
-
5
accessの処理が遅い
その他(データベース)
-
6
[Access] パススルークエリーで実行すると遅い
Access(アクセス)
-
7
Access クエリ実行が急に非常に遅くなりました。
Access(アクセス)
-
8
ACCESSVBAのseekで複数INDEX検索方法について
Access(アクセス)
-
9
ACCESS VBAでSeekメソッドの処理記述
Access(アクセス)
-
10
Access サブフォームでの選択行の取得
その他(データベース)
-
11
Accessでテーブル名やクエリ名一覧の抜き出し
Access(アクセス)
-
12
Accessのテーブルデータを一気にVBAで追加したい・・
その他(データベース)
-
13
insertを高速化させたい
その他(データベース)
-
14
SQL文で パラメータが少なすぎます エラー
Access(アクセス)
-
15
日付型のフィールドに空白を入れる方法を教えてください
その他(データベース)
-
16
Accessのマクロでモジュールを実行させたい。
Access(アクセス)
-
17
FindFirst を複数条件で検索
Visual Basic(VBA)
-
18
[性能改善]AccessのDBに大量のデータをUpdateする場合の性能対策について
その他(データベース)
-
19
Access_Formのデザインビュー画面を拡大表示
Access(アクセス)
-
20
Access2007でSQLの複数列副問い合わせについて
その他(データベース)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Access2003でのテーブルの有無確認
-
ADOでループすると1レコードず...
-
アクセスクエリの計算
-
Excel 2019 のピボットテーブル...
-
Accessのリンクテーブルのパス...
-
DBのタイプの指定とサイズにつ...
-
IT用語について質問です。 以前...
-
accessでのフォームの連携について
-
「直需」の意味を教えてください
-
APN設定について教えていただけ...
-
BIOSでAHCIに設定したいが、項...
-
ACCESSでテーブルのフィールド...
-
Excelで空白以外の値がある列の...
-
エクセルVBAで5行目からオート...
-
Accessでテーブルの値をテキス...
-
accessでの請求管理について
-
あるフィールドの最大値を条件...
-
【Access】フォームで自動計算...
-
0の除算
-
Accessのことで教えてください...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
access count数を変数に格納
-
「更新に必要なキー列の情報が...
-
access2000でつまづいてます
-
Accessの更新前処理について。D...
-
AceessVBA 非同期処理について
-
半角スペースの置換でエラーを...
-
ACCESSのFindコマンドが遅い
-
Access VBAで自動連番を振るには
-
[Access]削除時のエラーメッセ...
-
ACCESS、EXCELの限界?
-
VBScript+SQLServerでcountがう...
-
AccessVBAについて
-
Set rst = db.OpenRecordset("S...
-
VisualBasic6.0 SP3 (←注) Acc...
-
Access VBA
-
cobolのカーソルについて
-
VB2010のSQLを使ったレコードカ...
-
ADOでループすると1レコードず...
-
VB2005でAddNew()
-
access vbaでクエリデータの中...
おすすめ情報