2010-11-24 42 views

Respuesta

149

Max. la capacidad es de 2 gigabytes de espacio, por lo que está viendo un poco más de mil millones de caracteres de 2 bytes que encajarán en un campo NVARCHAR(MAX).

Uso de los números más detallados de la otra respuesta, que debe ser capaz de almacenar

(2^31 - 1)/2 = 1'073'741'823 double-byte characters 

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

en su columna NVARCHAR(MAX) (por desgracia, esa última media personaje se pierde ...)

+1

Wow ... así que supongo que realmente no tengo que preocuparme por establecer una regla de validación de tamaño máximo. Sin embargo, será mejor que tenga cuidado cuando uso el nvarchar (MAX). – quakkels

+18

@quakkels: a menos que planee superar la guerra y la paz de Tolstoi (aproximadamente 3,1 millones de caracteres) casi 350 veces, no, no tendrá que preocuparse por la capacidad :-) Y dado que es un tipo VARCHAR/NVARCHAR, siempre usará solo tanto espacio como sea necesario, sin preocupaciones por el espacio desperdiciado o innecesariamente reservado ... ¿ –

+2

realmente? Eso es genial. Solo por curiosidad, ¿en qué caso no quieres usar nvarchar (MAX)? – quakkels

4

2^31-1 bytes. Entonces, un poco menos de 2^31-1 caracteres para varchar (max) y la mitad para nvarchar (max).

nchar and nvarchar

11

De char and varchar (Transact-SQL)

varchar [(n | max)]

Variable-le ngth, carácter no Unicode datos. n puede ser un valor de 1 a 8,000. max indica que el tamaño máximo de almacenamiento de es de 2^31-1 bytes. El tamaño de almacenamiento es la longitud real de los datos ingresados ​​+ 2 bytes. Los datos ingresados ​​pueden tener 0 caracteres de longitud. Los sinónimos de ISO para varchar son char variando o variando el carácter.

Cuestiones relacionadas