1

Web (mvc3) アプリケーションの電子メール サービスを .Net から SQL Database Mail に移行しています。添付ファイルとして送信したいコンテンツの一部は、SQL FileTable にアップロードされています。添付ファイル (@file_attachments=) に UNC パスを使用すると、次のエラーが発生します。

Msg 22051, Level 16, State 1, Line 0 Attachment file
\\computername\mssqlserver\foldername\foldername\DE107D2C-B945-4F1E-A4B9-4B398C9DE758.jpg)
is invalid.

同じパスを使用してファイルを直接開くことができ、ファイルをローカル フォルダーにコピーすると、ファイルが正常に添付されます。問題は、FileTable ディレクトリのフォルダーのアクセス許可であると思われます。しかし、そのフォルダーの権限を設定するためのフックが見つかりません。

Windows認証を使用して、EXECUTE msdb.dbo.sp_send_dbmailをSSMS(ローカルSQLインスタンス)でローカルに実行しています。

どんな提案でも大歓迎です。

4

2 に答える 2

1

この動作は Microsoft データベース エンジン フォーラムで検証され、フィードバックを送信しました。 -ファイルが無効です

このタイトルのエラー コードは、22015 ではなく 22051 である必要があることに注意してください。

それまでの間、SQLコマンドシェルを使用してファイルを別のローカルフォルダーにコピーし、そのパスを添付ファイルに使用するという回避策を使用しています

ありがとう。

于 2012-08-02T20:38:18.417 に答える
0

添付ファイルが存在するネットワーク サービス ユーザーに添付ファイル フォルダーを共有します。\\ip_addres\filefolder\abc.pdf のような attachemnt ファイル パスを send_dbmail ストアド プロシージャに指定します。ファイルとSQLサーバーが異なるマシン上にある場合、これは機能します

于 2013-04-10T13:21:05.683 に答える