存储长十六进制值

时间:2016-06-08 07:07:11

标签: mysql mariadb

存储具有超过1500个字符的长十六进制字符串的最佳方法是什么?

什么是最好的类型?

  1. Byte
  2. 文字
  3. LongText
  4. 的VarChar

2 个答案:

答案 0 :(得分:2)

  • BINARY有固定填充,最大长度 255字节, 所以这对你没有好处。
  • VARCHARTEXT的最大长度均为 65535字节(64kB)并使用 2多个额外字节来存储数据的长度。
  • LONGTEXT的最大长度为 4294967295字节(4GB) 并使用 4个额外字节来存储数据的长度。

如果您知道HEX字符串中的数据总是少于64kB,我会选择TEXT,否则请选择LONGTEXT

答案 1 :(得分:0)

如果您将其打包成字节(从十六进制),然后VARBINARY(...)BLOB

如果您将其保留为十六进制,VARCHAR(...) CHARACTER SET asciiTEXT CHARACTER SET ascii。我特别提到ascii,如果你的默认值是utf8;对于十六进制数字,不需要utf8。