Neben dem Spickzettel für die MySQL Integer Größe habe ich mir nun noch ein für die MySQL TEXT/BLOB Größe gemacht.
CHAR / BINARY
Größe festgelegt durch die Anzahl der Zeichen, aber maximal 255 Zeichen.
Also immer ein Festwert, egal ob gefüllt, halb gefüllt oder leer.
VARCHAR / VARBINARY
Definierte Feldgröße: * von 0-255 Zeichen: Anzahl der Zeichen + 1 Byte * von 256-65532 Zeichen Anzahl der Zeichen + 2 Byte
Also ein VARCHAR (500) brauch für das abspeichern von “abcd” ein Byte mehr Platz als ein VARCHAR (200).
TINYTEXT / TINYBLOB
Größe: < 2 8 Byte (+ 1 Byte MySQL)
daraus ergibt sich max. 255 (Ein-Byte1 ) Zeichen
TEXT / BLOB
Größe: < 2 16 Byte (+ 2 Byte MySQL )
daraus ergibt sich max. 65535 (Ein-Byte1 ) Zeichen oder ungefähr 64 KByte
MEDIUMTEXT / MEDIUMBLOB
Größe: < 2 24 Byte (+ 3 Byte MySQL)
daraus ergibt sich max. 16777216 (Ein-Byte1 ) Zeichen oder ungefähr 16 MB
LONGTEXT / LONGBLOB
Größe: < 2 32 Byte (+4 Byte MySQL)
daraus ergibt sich max. 4294967296 (Ein-Byte1 ) Zeichen oder ungefähr 4 GB
1 Ein Byte Zeichen deswegen weil sich die Anzahl der Zeichen bei Unicode-/Nicht ASCII-Zeichen entsprechend verringert.
- 1 Byte je Zeichen benutzt das normale Latin
- 2 Byte je Zeichen benutzen die meisten Europäischen Sprachen mit Umlauten, Akzenten usw.
- 3 Byte je Zeichen werden nur von chinesischen , koreanischen und japanischen Schriftzeichen benutzt.
Daraus folgt in einem Normalen “TEXT” können “nur” 21845 Chinesische oder 32767 “Normale” Nicht ASCII Zeichen untergebracht werden. Deswegen nochmal die Angabe in Byte
Kommentare
Kommentarfunktion für diesen Artikel geschlossen.
