- 締切済み
SQL Serverで更新されない問題
皆様、いつもお世話になっております。 以下の環境で、サーバのDBに対してクライアントより更新処理を行っております。 更新時にトランザクション制御(begin Tran 及び、Commit Tran)を行っておりますが、更新されません。 (更新時のエラーも発生しておりません。) トランザクション制御を外して更新すると、正常に更新されます。 なお、クライアントのMDACを最新にしてみたのですが、現象は変わりませんでした。 <サーバ環境> OS :Windows 2008 Server R2 DBMS:SQL SERVER 2008 R2 <クライアント環境> OS :Windows XP アプリ : VB6 SP5で開発したADO接続のプログラム 追記: サーバは最近新しいものに入れ替えたのですが、旧サーバでは、上記のような現象は 発生しておりません。 <旧サーバ環境> OS :Windows 2003 Sever SP無し DBMS:Sql Server 2000 SP不明 些細な情報でもかまいませんので、情報のご提供をお願いします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- nora1962
- ベストアンサー率60% (431/717)
回答No.1
> 更新時にトランザクション制御(begin Tran 及び、Commit Tran)を行っておりますが ここは実際にどうコーディングしていますか? ADODB,CONNECTION変数cnについて cn.execute "begin Tran" cn.execute "Commit Tran" としているのなら cn.BeginTrans cn.CommitTrans に変更してみてはどうでしょう。
お礼
早速のご回答ありがとうございます。 回答を補足に書いてしましましたが、補足が足りなかったので、お礼に記述させていただきます。 現状の処理について補足させていただきます。 cn.BeginTrans ↓ VBでテーブルAに対してInsertしています。 ↓ ストアドプロシジャ実行(テーブルAを読んでテーブルBに対してInsert・Updateを行っています。) ストアドでは、トランザクション管理は行っておりません。 ストアドでは、インプットであるテーブルAのデータ無しで終了しています。 ↓ cn.CommitTrans 以上となっております。 お知恵をお貸しください。よろしくお願いします。
補足
早速のご回答ありがとうございます。 ソースを確認しましたところ、 cn.BeginTrans cn.CommitTrans になっておりました。 他に原因となるような点はございませんでしょうか。 よろしくお願いします。