Mysql
 sql >> Datenbank >  >> RDS >> Mysql

MySQL – Base64 vs. BLOB

JSON geht von utf8 aus und ist daher nicht mit Bildern kompatibel, es sei denn, sie sind auf irgendeine Weise codiert.

Base64 ist fast genau 8/6-mal so sperrig wie Binär (BLOB). Man könnte argumentieren, dass es leicht erschwinglich ist. 3000 bytes wird etwa 4000 bytes .

Jeder sollte in der Lage sein, beliebige 8-Bit-Codes zu akzeptieren, aber das tut nicht jeder. Base-64 ist möglicherweise der einfachste und insgesamt beste Kompromiss, um nicht mit 8-Bit-Daten umgehen zu müssen.

Da diese "klein" sind, würde ich sie in einer Tabelle speichern, nicht in einer Datei. Ich würde sie jedoch in einer separaten Tabelle speichern und JOIN durch eine entsprechende id wenn Sie sie brauchen. Dadurch können Abfragen, die das Bild nicht benötigen, schneller ausgeführt werden, da sie die BLOBs nicht überspringen.

Technisch gesehen TEXT CHARACTER SET ascii COLLATE ascii_bin tun würde, aber BLOB verdeutlicht, dass in der Spalte eigentlich kein brauchbarer Text steht.