【发布时间】:2013-10-04 02:45:25
【问题描述】:
我有一个 PHP 应用程序,它将所有帐户都存储在一个表中,无论它们是否处于活动状态。该表有一个名为“active”的列,它要么为 NULL,表示帐户处于活动状态,要么包含 MD5 哈希,表示帐户处于非活动状态。
根据Best practices for efficiently storing md5 hashes in mysql,如果列始终包含 MD5 散列且从不为 NULL,则首选 BINARY(16),而 CHAR(32) 是次佳选择。由于我的大多数帐户都处于活动状态,因此大多数列值为 NULL,我是否最好使用不同的数据类型,例如 VARCHAR(32)?
【问题讨论】:
-
是的,你可以。
VARCHAR(32)更可取。