我将serialized
数据存储在 mysql 中,但不确定选择哪种字段类型?
下面是序列化数据输出的一个示例,
string(393) "a:3:{s:4:"name";s:22:"PACMAN-Appstap.net.rar";s:8:"trackers";a:6:{i:0;s:30:"http://tracker.ccc.de/announce";i:1;s:42:"http://tracker.openbittorrent.com/announce";i:2;s:36:"http://tracker.publicbt.com/announce";i:3;s:23:"udp://tracker.ccc.se:80";i:4;s:35:"udp://tracker.openbittorrent.com:80";i:5;s:29:"udp://tracker.publicbt.com:80";}s:5:"files";a:1:{s:22:"PACMAN-Appstap.net.rar";i:4147632;}}"
数据的字符串长度变化很大,最多可达 20,000 个字符。
我知道我不想使用TEXT
数据类型,因为这可能会因为必须使用的字符集而损坏数据。
VARBINARY
在使用,等时BLOB
,我被卡住了。MEDIUMBLOB
让我们说如果我使用VARBINARY(20000)
这是否意味着我可以20000
安全地插入一个长度为的字符串,如果它结束了则丢弃插入?