JSONはutf8を想定しているため、何らかの方法でエンコードされていない限り、画像との互換性はありません。
Base64は、バイナリ(BLOB)のほぼ正確に8/6倍のかさばりです。それは簡単に手頃な価格であると主張することができます。 3000バイトコード> 約4000
bytes
になります 。
誰もがすべき 任意の8ビットコードを受け入れることができますが、すべての人が受け入れるわけではありません。 Base-64は、8ビットデータを処理する必要がないための最も単純で全体的な最良の妥協案かもしれません。
これらは「小さい」ので、ファイルではなくテーブルに保存します。ただし、それらを別のテーブルに保存し、 JOIN
適切なid
によって あなたがそれらを必要とするとき。これにより、BLOBをステップオーバーしないため、画像を必要としないクエリをより高速に実行できます。
技術的には、 TEXT CHARACTER SET ascii COLLATE ascii_bin
できますが、 BLOB
列に実際に使用可能なテキストがないことが明確になります。