dedlfix: Welcher Spaltentyp für hexadezimalen Farbwert? (mysql)

Beitrag lesen

Hi!

Ich möchte hexadezimale Farbwerte in einer mySQL-Datenbank abspeichern. Da es sich um sehr viele Farbwerte handelt (ca. 85 pro Datensatz) möchte ich auch einen möglichst performanten Datentyp verwenden.
Gibt es hier etwas geeigneteres außer Varchar?

Ein VARCHAR mit einer 1-Byte-Kodierung benötigt 1 Byte pro Zeichen plus 1 Längenbyte.
Ein CHAR mit einer 1-Byte-Kodierung benötigt 1 Byte pro Zeichen.
Ein BINARY der Länge 3 benötigt 3 Byte

Wenn du also Farbwerte als 6 Zeichen ablegen willst, kommst du mit CHAR (in Latin1) nicht günstiger. Wenn du direkt Hex-Werte nimmst, passt ein Farbwert in 3 Byte - dann am besten BINARY.

Allerdings sind die paar Byte nun wirklich nicht mehr das Problem. Bedenke, dass du mit der Binärdarstellung auch einen höheren Aufwand hast, die Werte in Textform zu bringen, gegebenenfalls auch beim Umkehrvorgang (zumindest einmalig beim Einpflegen).

Lo!