Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.
Zeichendaten können als Strings mit fester oder variabler Länge gespeichert werden. Der Unterschied besteht darin, dass Strings fester Länge nach rechts mit Leerzeichen aufgefüllt werden und immer die gleiche Anzahl von Bytes benötigen, Strings mit variabler Länge hingegen nicht mit Leerzeichen aufgefüllt werden und nicht immer die gleiche Anzahl Bytes benötigen. Wenn Sie eine Zeichenspalte definieren, müssen Sie angeben, wie lang ein String, der in dieser Spalte gespeichert wird, maximal sein darf. Möchten Sie zum Beispiel Strings mit höchstens 20 Zeichen speichern, könnten Sie folgende Definitionen verwenden:
char(20) /* feste Länge */ varchar(20) /* variable Länge */
Die Höchstlänge für char-Spalten beträgt aktuell 255 Zeichen. varchar-Spalten können hingegen bis zu 65.535 Bytes enthalten. Wenn Sie längere Strings speichern müssen (E-Mails, XML-Dokumente usw.), sollten Sie einen der Texttypen verwenden (mediumtext oder longtext), die weiter unten in diesem Abschnitt eingeführt werden. Im Allgemeinen sollten Sie den char-Typ benutzen, wenn alle in der Spalte vorkommenden Strings gleich lang sein werden (zum Beispiel Ländercodes), und varchar, wenn die Strings unterschiedlich lang sein werden. char und varchar werden auf allen wichtigen Datenbankservern gleich verwendet.