Was bedeutet varchar(50) bei SQL

4 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Darf nur 50 Zeichen enthalten :)

Das ist richtig, Du hast 50 Byte Nutzdaten in dem Du 50 ASCII-Zeichen (keine Sonderzeichen) speichern kannst. Das andere ist nvarchar(50) dort können auch 50 Zeichen gespeichert werden, aber es können auch Sonderzeichen sein. Es benötigt glaube 2 Byte pro Zeichen. Dass merkt man bei der Arbeit gar nicht.

varchar2(50) darf max. 50 zeichen enthalten. es wird nur der eingegebene text gespeichert und es wird nicht auf 50 zeichen aufgefüllt. vorteil: du kannst das feld länger definieren als du brauchst, da nicht die maximal mögliche länge gespeichert wird..

eine feste zeichenlänge hast du dagegen bei char(50): es werden immer 50 zeichen gespeichert, auch wenn du nur 10 eingibst. in der regel wird mit leerzeichen aufgefüllt.

Das Feld wird für max. 50 Zeichen angelegt. Falls mehr Zeichen eingegeben werden, werden diese nicht gespeichert.