[sql-server] NVARCHAR (MAX)의 최대 문자는 얼마입니까?

NVARCHAR(MAX)SQL Server 2008에서 유형의 열을 선언했습니다. 최대 길이가 MAX 인 정확한 최대 문자는 무엇입니까?



답변

열 유형의 최대 크기 NVARCHAR(MAX)는 2GB 스토리지입니다.

NVARCHAR문자 당 2 바이트를 사용 하기 때문에 약입니다. 10 억 자

Leo Tolstoj의 전쟁과 평화 는 1,440 페이지에 달하는 약 6 억 단어가 포함 된 약 6 억 개의 단어를 포함하고 있습니다. 그래서 당신은 전쟁과 평화 책 전체의 약 166 부를 각 NVARCHAR(MAX)열에 붙일 수 있습니다.

충분한 공간이 필요합니까? 🙂


답변

기본적으로 nvarchar (MAX) 값은 실제 길이가 4000자를 초과하지 않는 한 nvarchar (4000) 값과 동일하게 저장됩니다. 이 경우, 행 내 데이터는 데이터가 저장된 하나 이상의 별도 페이지에 대한 포인터로 대체됩니다.

데이터가 4000자를 초과 할 것으로 예상되면 nvarchar (MAX)를 사용하는 것이 좋습니다.

출처 : https://social.msdn.microsoft.com/Forums/en-US/databasedesign/thread/d5e0c6e5-8e44-4ad5-9591-20dc0ac7a870/


답변

에서 MSDN 문서

nvarchar [(n | 최대 )]

가변 길이 유니 코드 문자열 데이터. n 은 문자열 길이를 정의하며 1에서 4,000 사이의 값일 수 있습니다. max 는 최대 저장소 크기가 2 ^ 31-1 바이트 (2GB)임을 나타냅니다. 스토리지 크기 (바이트)는 입력 된 실제 데이터 길이의 2 배 + 2 바이트입니다.


답변

실제로 nvarchar(MAX)약 1070000000자를 저장할 수 있다고 생각 합니다.


답변