2009-08-31 13 views
1

SQL Server 2005テーブルのXML列を更新しようとしています。この列へのアクセスは、ストアドプロシージャを使用して行います。私はこのプロシージャを呼び出すために.NETのtableAdapterを使用しています。 問題:xml列の値が更新されません。.NET TableAdapterからXML列を更新する際の問題

いくつかの所見:

  • 私は、ストアドプロシージャの呼び出しは、実際にSQL Serverに送信されたかどうかを確認するためのSQLProfilerを使用。これが事実です。
  • 私はSQL Server Management Studioからストアドプロシージャコールを直接実行しました。このようにすると、ストアドプロシージャが実行されます。

.NET tableAdapterが使用するパラメータに問題がありますか?それは私の見解ではSQL Server Management Studioの呼び出しとの唯一の違いです。ここで

はリストである:あなたが手動でストアドプロシージャを実行しようとしたとき

-- network protocol: TCP/IP 
    set quoted_identifier on 
    set arithabort off 
    set numeric_roundabort off 
    set ansi_warnings on 
    set ansi_padding on 
    set ansi_nulls on 
    set concat_null_yields_null on 
    set cursor_close_on_commit off 
    set implicit_transactions off 
    set language us_english 
    set dateformat mdy 
    set datefirst 7 
    set transaction isolation level read uncommitted 

答えて

0

、あなたはあなたのアプリケーションのテーブルアダプタを使用しているのと同じユーザー資格情報を使用しましたか?そうでない場合は、ユーザーを偽装して、現在アプリがキャッチしていないエラーが表示されるかどうかを確認してください。

これは、あなたのアプリケーションコードでは、データベースリクエストの周りの例外処理がありますか?エラーが発生しているが、トラップしていないため無視される可能性があります。

+0

テーブルアダプターと手動テストの両方でIntegrated Securityを使用しているため、資格情報は同じです。 私はまた、要求の周りの例外処理コードを持っています。例外は発生していません。 –

+0

エラーが見つかりました。コミットされていないトランザクションにありました。この質問は閉じたと考えてください。 –

関連する問題