現在、BINARY(16)
を使用すると、チェックサムの半分が失われます。 。 MD5チェックサムをBINARY(16)
に保存する場合 ではなくバイナリデータとして保存する必要があります 16進数でエンコードされます。つまり:
INSERT INTO test (md5_binary) VALUES(UNHEX(md5("one!")));
別のチェックサムと目玉で比較したい場合は、HEX関数を使用して16進数に再度エンコードできます。
SELECT HEX(md5_binary) FROM test;
16進テキストの代わりにBINARYを使用してチェックサムを格納する利点は、ストレージの半分が必要になることです。