Ecco la risposta:http://sqlfiddle.com/#!6/d41d8/4737
declare @myVar1 varchar = 'Friday'
declare @myVar2 varchar(10) = 'Friday'
select len(@myVar1)as len1,
len(@myVar2)as len2
Il risultato è:
LEN1 LEN2
1 6
Quindi, se non specifichi una dimensione per varchar
, SQL Server lo farà per te. In questo caso 1. Devi sempre specificare la taglia in modo esplicito.
Cattive abitudini da calciare:dichiarare VARCHAR senza (lunghezza)