【发布时间】:2020-01-23 02:52:07
【问题描述】:
我想创建一个 ID 范围为 1 - 999999 的数据库表。 我想出了:
CREATE TABLE TEST
(
ID int NOT NULL
);
但我认为int 的范围(-2,147,483,648、2,147,483,647)太大了。像ID int(6) 这样的东西有用吗?
【问题讨论】:
-
您使用的是哪个数据库..?? MSSql / MySql..?
-
达到第 100 万条记录时会发生什么?
-
见:mysqltutorial.org/mysql-int 并考虑
mediumint -
为了清楚起见,您是否有理由认为大范围太大?这对存储没有影响 - 没有预先分配空间或类似的东西。
-
Int(6) 是一个几乎没有意义的结构。相反,您可以只用 999999 行填充一个 int 列,然后只允许更新。