char
, varchar
, nchar
, nvarchar
sono in realtà stringhe
il size
aiuta a determinare quanto è lunga la stringa...
a proposito
char
ha una lunghezza fissa, quindi se vuoi avere "1"
in un char(2)
il contenuto sarà effettivo "1 "
varchar(2)
sarà "1"
il n
part sta per unicode, quindi tutto all'interno di quei campi sarà in Unicode.
normalmente usiamo nvarchar
per risparmiare spazio sui dati, come se avessi un char(250)
il database salverà sempre l'intera lunghezza, come un varchar(250)
vuoto non sarà niente.
Nel nostro linguaggio di programmazione utilizziamo quindi il riempimento per fare ciò che char
fa, ad esempio, in C#
"1".PadLeft(2);
"1".PadRight(2);
produrrà " 1"
e "1 "
rispettivamente.