[リストへもどる]
一括表示

投稿時間:2004/07/22(Thu) 16:12
投稿者名:こん
Eメール:
URL :
タイトル:
連結コントロールを使用したトランザクション処理は無理?
いつもお世話になっております。

VBで、ADODC+連結コントロールを使用し、
ACCESSのDBを更新させるプログラムを作成しております。

VBフォーム上の、連結コントロールの編集中に、
不慮にカレントレコードが移動してしまったり、
アプリケーションが終了してしまった場合に、DBが更新されてしまうのを防ぐ為、
コミットをかけない限り、DBを更新させないような処理を作りたいのですが、
良い案が出ず、困っております。

どなたか良い方法ご存知ないでしょうか?

投稿時間:2004/07/24(Sat) 09:40
投稿者名:Say
Eメール:
URL :
タイトル:
Re: 連結コントロールを使用したトランザクション処理は無理?
連結コントロールにこだわるならワークテーブルを使って処理し、
コミットしたら本テーブルにアップデートするようにすればいいかと。

こだわらないなら、連結せずにローカルで処理し、
コミット時にアップデートSQLを発行すればいかと。

投稿時間:2004/07/24(Sat) 15:52
投稿者名:魔界の仮面弁士
Eメール:
URL :
タイトル:
Re: 連結コントロールを使用したトランザクション処理は無理?
> アプリケーションが終了してしまった場合に、DBが更新されてしまうのを防ぐ為、
> コミットをかけない限り、DBを更新させないような処理を作りたいのですが、
> 良い案が出ず、困っております。

.Recordset.ActiveConnection.BeginTrans、とか。

投稿時間:2004/07/26(Mon) 10:08
投稿者名:こん
Eメール:
URL :
タイトル:
解決: 連結コントロールを使用したトランザクション処理は無理?
> > アプリケーションが終了してしまった場合に、DBが更新されてしまうのを防ぐ為、
> > コミットをかけない限り、DBを更新させないような処理を作りたいのですが、
> > 良い案が出ず、困っております。
>
> .Recordset.ActiveConnection.BeginTrans、とか。

Sayさん、魔界の仮面弁士さん、ありがとうございました。
連結コントロールの使用は、どうにも避けられず困っておりました。
ワークテーブルを使用しての方法も考えましたが、
できるだけ、DBその他の変更を加えずにすむ方法があればということでして。

魔界の仮面弁士さんの方法を、試してみたところ上手くいきました。
問題のほうも、無事解決いたしました。

どうもありがとうございました。
今後とも、宜しくお願いいたします。