2011-11-21 27 views
1

テーブルを更新するコマンドテキストを実行するVBAがあります。 UPDATEにテーブルがトリガされています。私が行うと :ADODBの影響を受けた行がトリガの影響を受ける行を返します

Set rs = cmd1.Execute(affectedCount) 

affectedCountは(私が思う)トリガから影響を受けた行を返します。

元の更新文の影響を受ける行数を返すにはどうすればよいですか?

+0

どのデータベース - MySQL、SQL Server?適切なタグを追加すると、より多くの回答が得られる可能性があります。 – Fionnuala

+0

コードをもっと見ると助かります。インラインSQLを使用するか、ストアドプロシージャを呼び出しますか? – Andomar

+0

これは、Access 2k3フロントエンドとSQL Server 2000バックエンドを使用します。 – James

答えて

3

SQL Serverを使用していると仮定すると、もう少し前に同様の問題が発生しました。私はそれが関連しているかどうかわからないが、ADODBはSQL Serverによって生成された "#records affected"メッセージによって "混乱"するだろう。

我々は、メッセージを抑制するため、影響を受けたトリガ/プロシージャの上部に

SET NOCOUNT ON 

を追加することによって、これを解決しました。 SQL Management Studioからステートメントを実行して、影響を受ける「#レコード」が生成されていることを正確に確認できます。

これが役立つかどうかわかりませんが、試してみる価値はありますか。

+0

それはうまくいった!ありがとう! – James

関連する問題