照合は、ORDER BY
が必要な場合にのみ違いがあります または列を検索します。これらのbase64でエンコードされたアイテムは、おそらく検索またはソートされません。
エンコードされたアイテムの長さが64Kバイト未満であることが保証されている場合は、次のように列を定義します。
`columnname` TEXT CHARACTER SET ascii,
これはまさにbase64でエンコードされた変数に必要なものです。エンコードプロセスにより、すべてが表示可能なASCIIに変換されます。
アイテムの長さが16メガバイト未満で、64kを超えるものがある場合は、MEDIUMTEXT
を使用します。 TEXT
の代わりに 。
編集 数年後。
デコードされたOQエンコード文字列は、シリアル化されたphpオブジェクトです:
a:2:{s:20:"Type_of_organisation";s:20:"Member of Parliament";s:8:"Postcode";s:7:"PE1 1JA";}
観察1:utf8またはutf8mb4文字セットを使用して、これらのものの多くはエンコードせずにテキスト列に格納されます。たくさん?はい。 WordPressはこの方法でオプションデータを保存します。
観察2:JSONに変換できる場合は、MySQLの最近のバージョンでJSONデータ型を使用できます。 JSON検索はまだ引数にできませんが、構造化されています。