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 (Type )。INT
当我尝试单独执行此查询时,它工作正常。
但是,当我尝试将其作为存储过程的一部分运行时,出现以下错误:
消息 8152、级别 16、状态 13、过程 Proc_Name、第 57 行
字符串或二进制数据将被截断。
第 57 行SELECT
是上述查询的语句所在的位置。任何人都知道为什么会发生这种情况?
编辑:我尝试更改NVARCHAR(100)
为NVARCHAR(200)
and NVARCHAR(MAX)
,但仍然出现错误。此外,如果我单独运行查询,它可以正常工作(有 100 个字符)。