char , varchar , nchar , nvarchar są w rzeczywistości ciągami
size pomaga określić długość ciągu...
przy okazji
char ma stałą długość, więc jeśli chcesz mieć "1 " w char(2) zawartość będzie rzeczywista "1 "
varchar(2) będzie "1 "
n część oznacza Unicode, więc wszystko wewnątrz tych pól będzie w Unicode.
normalnie używamy nvarchar aby zaoszczędzić trochę miejsca na danych, tak jakbyś miał char(250) baza danych zawsze zapisze pełną długość, jako pusty varchar(250) będzie niczym.
W naszym języku programowania używamy dopełnienia, aby zrobić to, co char robi na przykład w C#
"1".PadLeft(2);
"1".PadRight(2);
wyświetli " 1" i "1 " odpowiednio.