Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Qual é o número máximo de caracteres que nvarchar(MAX) irá conter?


Máx. a capacidade é de 2 gigabytes de espaço - então você está olhando para pouco mais de 1 bilhão de caracteres de 2 bytes que cabem em um NVARCHAR(MAX) campo.

Usando os números mais detalhados da outra resposta, você poderá armazenar
(2 ^ 31 - 1 - 2) / 2 = 1'073'741'822 double-byte characters

1 billion, 73 million, 741 thousand and 822 characters to be precise

em seu NVARCHAR(MAX) coluna (infelizmente, esse último meio caractere é desperdiçado ...)

Atualização: como @MartinMulder apontou:qualquer coluna de caractere de comprimento variável também tem uma sobrecarga de 2 bytes para armazenar o comprimento real - então eu precisava subtrair mais dois bytes do 2 ^ 31 - 1 comprimento que eu havia estipulado anteriormente - assim você pode armazenar 1 caractere Unicode a menos do que eu havia reivindicado antes.