我在存储过程中有以下内容:
DECLARE @TSQL NVARCHAR(MAX)
SET @TSQL = N'.....' Which contains about 33000 characters of text
当我这样做时,会返回PRINT LEN(@TSQL) 7968
。为什么@TSQL的其余部分被切断了?
答案 0 :(得分:3)
确保连接时所有内容都是nvarchar(max)
看看这个
DECLARE @n NVARCHAR(MAX)
SELECT @n = REPLICATE(convert(varchar(max),'A'),300000)
select LEN(@n), DATALENGTH(@n)
GO
- 300000 600000
DECLARE @n NVARCHAR(MAX)
SELECT @n = REPLICATE('A',300000)
select LEN(@n), DATALENGTH(@n)
- 8000 16000