【发布时间】:2012-04-21 21:43:23
【问题描述】:
我都..
我一直都使用 int(10),但是几天前,我开始了一个新项目,并希望做到这一点 100% 优化 ;)
所以我想知道,有多少;
user_id => int(6) vs. mediumint (8) 或类似的可以创建/添加
group_id => tinyint(1) vs tinyint(4) 或类似的是否可以创建/添加
等等..
我知道 (X) 是字段的宽度,但是,我不能完全理解可以使用示例创建的实际用户/帖子/消息 ++ 的数量; mediumint(8) 用于 id,而不是 int(10)。
感谢您对此的任何回复!
-汤姆
【问题讨论】:
-
Okei.. 所以如果我理解正确.. 对于我的示例场景;对 user.id 使用 Int、mediumint 与可以创建多少用户无关?就像说; mediumint(8) 能拯救800万用户吗?有什么实际的例子吗?
-
@Catcall:你真的认为 OP 计划在他的用户 ID 字段中使用负值吗?我不。所以,假设他只会使用正值(这是最常见的做法),那么使用
INT UNSIGNED确实有效地加倍您可以使用的唯一值的数量。谁在乎其他 DBM 支持什么?这个问题被标记为 MySQL。关键是,如果您只使用正值并且使用INT UNSIGNED而不是INT,那么您可以使用的值数量会翻倍。是否需要进一步论证?
标签: mysql database-design integer