>데이터 베이스 >MySQL 튜토리얼 >SQL Server 2005에서 nvarchar(max) 문자열이 4000자로 잘리는 이유는 무엇입니까?

SQL Server 2005에서 nvarchar(max) 문자열이 4000자로 잘리는 이유는 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2025-01-01 08:46:10281검색

Why is my nvarchar(max) string truncated to 4000 characters in SQL Server 2005?

SS 2005에서 Nvarchar(Max) 문자열 잘림

nvarchar(max)로 선언된 문자열이 TSQL에서 4000자만 검색하는 이유는 무엇입니까? SS에서 2005?

솔루션

@SQL1을 nvarchar(max)로 선언했음에도 불구하고 처음에는 각각 4000 이하의 짧은 문자열(@alldate, @alldateprevweek) 모음을 저장합니다. 문자. 문자열 연결 프로세스는 이를 최대가 아닌 문자열로 처리한 후 @SQL1을 최대 4000자로 채웁니다.

이 문제를 해결하려면 @SQL1에 대한 할당의 오른쪽 전체가 nvarchar인지 확인하세요. (최대). 예를 들어 nvarchar(max) 상수를 연결하기 전에 @SQL1을 빈 문자열로 초기화합니다.

SET @SQL1 = ''
SET @SQL1 = @SQL1 + 'SELECT DISTINCT Venue...

할당 연산자의 우선 순위는 다른 언어의 정수 나누기와 마찬가지로 가장 낮습니다. 따라서 데이터 유형 우선순위는 연결이 아닌 할당에 의해 결정됩니다.

위 내용은 SQL Server 2005에서 nvarchar(max) 문자열이 4000자로 잘리는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.