MSDN
- Use varchar quando os tamanhos das entradas de dados da coluna variam consideravelmente.
- Use varchar(max) quando os tamanhos das entradas de dados da coluna variam consideravelmente e o tamanho pode exceder 8.000 bytes.
Quando o comprimento é especificado na declaração de um
VARCHAR
variável ou coluna, o comprimento máximo permitido é 8000 . Se o comprimento for maior que 8000 , você deve usar o MAX
especificador como o comprimento. Se um comprimento maior que 8000 for especificado, o seguinte erro será encontrado (assumindo que o comprimento especificado seja 10000 ):ATUALIZAÇÃO:-Encontrei um link que gostaria de compartilhar:-
Aqui
Não há muita diferença de desempenho entre
Varchar[(n)]
e Varchar(Max)
. Varchar[(n)]
fornece melhores resultados de desempenho em comparação com Varchar(Max)
. Se sabemos que os dados a serem armazenados na coluna ou variável são menores ou iguais a 8000 caracteres, então usar este tipo de dados Varchar[(n)] fornece melhor desempenho em comparação com Varchar(Max).Exemplo:Quando executei o abaixo script alterando a variável @FirstName
digite para Varchar(Max)
então, para 1 milhão de atribuições, está constantemente levando o dobro do tempo do que quando usamos o tipo de dados como Varchar(50) for variable @ FirstName.
DECLARE @FirstName VARCHAR(50), @COUNT INT=0, @StartTime DATETIME = GETDATE()
WHILE(@COUNT < 1000000)
BEGIN
SELECT @FirstName = 'Suraj', @COUNT = @COUNT +1
END
SELECT DATEDIFF(ms,@StartTime,GETDATE()) 'Time Taken in ms'
GO