• 締切済み

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不明 些細な情報でもかまいませんので、情報のご提供をお願いします。

みんなの回答

  • 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 に変更してみてはどうでしょう。

siotanpapa
質問者

お礼

早速のご回答ありがとうございます。 回答を補足に書いてしましましたが、補足が足りなかったので、お礼に記述させていただきます。 現状の処理について補足させていただきます。 cn.BeginTrans  ↓ VBでテーブルAに対してInsertしています。  ↓ ストアドプロシジャ実行(テーブルAを読んでテーブルBに対してInsert・Updateを行っています。)          ストアドでは、トランザクション管理は行っておりません。          ストアドでは、インプットであるテーブルAのデータ無しで終了しています。  ↓ cn.CommitTrans 以上となっております。 お知恵をお貸しください。よろしくお願いします。

siotanpapa
質問者

補足

早速のご回答ありがとうございます。 ソースを確認しましたところ、 cn.BeginTrans cn.CommitTrans になっておりました。 他に原因となるような点はございませんでしょうか。 よろしくお願いします。

関連するQ&A