Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


2297 / 9994 ←次へ | 前へ→

【10973】Re:テーブルの更新?方法
回答  小僧  - 09/2/2(月) 4:19 -

引用なし
パスワード
   ▼ON さん:
こんにちは。

> Q2)削除、追加のアクションクエリを1つの
> SQLつで実行するようなことは出来ますか

残念ながらAccessではできません。
Access以外のデータベースでは
「UPSERT」なんてキーワードでWeb検索すると
それに近いような事柄が出てくるかと思われます。


仕様がちょっと解りづらいのですが、
新規レコードが加わり、さらに更新がかかった場合、
add_TBLに ID が重複するような事がなければ良いのですが…。


また、削除クエリと追加クエリを行う間に
他割り込み処理が入らない事に注意が必要かもしれません。
(他ユーザの使用や突然のPCのシャットダウン、
ACCESSのフリーズによる強制終了など)

クエリをダブルクリックするのではなく
モジュールからVBAにて実行させる様な方法をとれば、
追加クエリが正常に終了しなかった場合には
削除クエリも行わなかった事にする事も可能です。

こちらについては「トランザクション」「Access」などを
キーワード検索すると事例が載っているかと思われます。


また、こちらも蛇足になるのですが
レコードの削除・追加を頻繁に繰り返すと
MDBの容量が肥大化する事が多々あります。
(定期的に最適化をすれば問題はないのですが)

・IDがある場合のUPDATE処理
・IDがない場合のINSERT処理

という方が、無駄なゴミを作らないですみそうですね。
1,655 hits

【10968】テーブルの更新?方法 ON 09/1/31(土) 15:14 質問[未読]
【10970】Re:テーブルの更新?方法 ON 09/1/31(土) 22:23 発言[未読]
【10973】Re:テーブルの更新?方法 小僧 09/2/2(月) 4:19 回答[未読]
【10977】Re:テーブルの更新?方法 ON 09/2/3(火) 17:36 お礼[未読]
【10978】Re:テーブルの更新?方法 小僧 09/2/3(火) 20:36 発言[未読]
【10994】Re:テーブルの更新?方法 ON 09/2/8(日) 21:16 お礼[未読]

2297 / 9994 ←次へ | 前へ→
ページ:  ┃  記事番号:
1078200
(SS)C-BOARD v3.8 is Free