私は動的クエリを使用して実行するSQL関数を持っています。パラメータの範囲のいずれかが異なる場合、sql関数がエラーをスローする
ダイナミッククエリは次のとおりです。
exec sp_executesql N'SELECT *
FROM Client_Report_Consol_Summary_RELATED1(@p11,@p12,@p13,@p14)
WHERE (WEEKNUM = @p4) AND (YEAR = @p5)
ORDER BY ProductDescription,ISSUE_DESC,ConsigneeFullName',
N'@p11 uniqueidentifier,
@p12 nvarchar(4000),
@p13 nvarchar(4000),
@p14 nvarchar(4000),
@p4 decimal(1,0),
@p5 decimal(4,0)',
@p11='F312F49B-203E-4BBA-A74E-82EA356ED6D3',
@p12=NULL,
@p13=N'',
@p14=N'',
@p4=1, <-- seems to be the issue
@p5=2011
私はデータ型の数値にvarchar型の変換エラー 算術オーバーフローエラーの下に取得する上で、私が実行したとき。
しかし、私はに "はP4の進(2,0) @" それが正常に動作し、 "P4進(1,0) @" 私の動的なクエリと更新を編集するとき。
誰もがなぜこのようなことが起こっているのかを明かすことができます。
おかげ アミット
Damien、それはそれをかなり説明します。大変感謝しています – Amit