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
我知道@ID
等於140(INT
類型)基於我之前插入的打印語句。當我嘗試單獨執行此查詢時,它工作正常。
然而,當我嘗試運行它作爲存儲過程我得到以下錯誤的一部分:
Msg 8152, Level 16, State 13, Procedure Proc_Name, Line 57
String or binary data would be truncated.
線57是其中所述SELECT
語句查詢以上。任何人有任何想法,爲什麼會發生這種情況?
編輯:我試着改變NVARCHAR(100)
到NVARCHAR(200)
和NVARCHAR(MAX)
,仍然有錯誤。另外,如果我單獨運行它,查詢工作正常(有100個字符)。
可以顯示'@ SF_TO'的聲明嗎?這是最有可能被截斷的變量。 – 2013-03-27 17:42:15
還有什麼是「FRST_NAME」,「MDLE_NAME」和「LAST_NAME」的定義。我也建議用一個不會錯過元音的鍵盤替換你的鍵盤。任何想法比'FIRST_NAME'輸入'FRST_NAME'難*多難*?你保存了一個角色,但你獲得了一些灰色的頭髮。 – 2013-03-27 17:44:54
@ Love2Learn爲'@ SF_TO'添加了聲明 – 2013-03-27 17:46:44