집 >데이터 베이스 >MySQL 튜토리얼 >T-SQL의 NVARCHAR(MAX) 변수가 4000자만 보유하는 이유는 무엇입니까?
SQL 쿼리에서 @SQL1 변수를 다음과 같이 선언했습니다. NVARCHAR(Max)는 4000자만 저장하는 문제에 직면해 있습니다. 이는 연결 중 데이터 유형의 자동 변환과 관련된 TSQL의 미묘한 동작으로 인해 발생합니다.
문제 이해:
해결책:
@SQL1이 NVARCHAR(Max)가 되면 오른쪽에서 연결하는 데이터도 NVARCHAR(Max)인지 확인해야 합니다. 이를 수행하는 한 가지 방법은 연결하기 전에 상수나 변수를 명시적으로 NVARCHAR(Max)로 캐스팅하는 것입니다.
예를 들어 다음 코드는 @SQL1이 NVARCHAR(Max)가 되는 결과를 올바르게 생성합니다.
SET @SQL1 = N''; SET @SQL1 = @SQL1 + CAST('SELECT DISTINCT Venue...,' AS NVARCHAR(MAX));
이렇게 하면 SELECT 문이 NVARCHAR(Max) 데이터 유형을 가진 문자열과 연결되어 결과도 NVARCHAR(최대).
위 내용은 T-SQL의 NVARCHAR(MAX) 변수가 4000자만 보유하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!