Declare @STAF_TO NVARCHAR(100)
SQL Server ストアド プロシージャの一部として次のクエリがあります。
SELECT @SF_TO = TP.FRST_NAME + ' ' + TP.MDLE_NAME + ' ' + TP.LAST_NAME
FROM tbl_Sf TS
INNER JOIN tbl_Pl TP ON (TS.POPL_PK = TP.POPL_PK)
WHERE TS.SF_PK = @ID
この直前に挿入した print ステートメントに基づいて、それ@IDが 140 (Type ) に等しいことがわかっています。INTこのクエリを個別に実行しようとすると、正常に動作します。
ただし、ストアド プロシージャの一部として実行しようとすると、次のエラーが発生します。
メッセージ 8152、レベル 16、状態 13、プロシージャ Proc_Name、行 57
文字列またはバイナリ データが切り捨てられます。
57行SELECT目は、上記のクエリのステートメントがある場所です。なぜこれが起こっているのか、誰にも考えがありますか?
編集: に変更しようとしNVARCHAR(100)ましたNVARCHAR(200)とNVARCHAR(MAX)、まだエラーが発生しました。また、個別に実行すると、クエリは正常に (100 文字で) 動作します。