2010-12-14 4 views
1

i를 저장 프로 시저에 다음과 같습니다 SQL 2005 NVARCHAR (최대) 문제

DECLARE @TSQL NVARCHAR(MAX) 

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

나는 PRINT LEN(@TSQL) 7968

가 반환됩니다. @TSQL의 나머지 부분은 왜 차단됩니까?

+0

'DECLARE'에 변수 이름이 누락 된 것 같습니다. – Oded

+0

예, 맞아요, 제가 추가했습니다. – fARcRY

답변

3

당신이 모든이 NVARCHAR (최대)이다 연결할 때

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

를 살펴 있는지 확인