2010-12-14 22 views
1

私は、ストアドプロシージャに次のようしている:私はPRINT LEN(@TSQL) 7968が返されない場合はSQL 2005のnvarchar(max)の問題

DECLARE @TSQL NVARCHAR(MAX) 

SET @TSQL = N'.....' Which contains about 33000 characters of text 

。 @TSQLの残りの部分が途切れるのはなぜですか?

+0

'DECLARE'に変数名が見当たらないようです。 – Oded

+0

はい、そうです、私はそれを追加しました。 – fARcRY

答えて

3

あなたが連結するとき、すべてがこの

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

を見てみましょうNVARCHAR(MAX)

であることを確認します

関連する問題