【发布时间】:2017-02-14 15:53:13
【问题描述】:
在我的应用程序中,我将 id 作为 char(16) 存储在表中,计算为 hex(uuid_short()) 以使其可与需要“key”为 char 或 varchar 的 memcached 插件一起使用。 示例值:57F328CF000003
如果我将其保留为默认字符集 utf8,根据docs,它将使用 3x16 字节,因为 utf8 最多可以有 3 个字节。 但是,对于我的用例中的可能值(1-9 位和 A-F),1 字节的 ascii 字符集就足够了。
我不确定仅更改列还是仅更改表以使用 ascii 字符集是否是个好主意?对默认模式或表使用不同的字符集是否有任何性能或设计影响?对排序有任何影响吗? 目前我使用默认字符集“utf8”和默认排序规则“utf8_general_ci”。
【问题讨论】:
标签: mysql unicode utf-8 character-encoding