【发布时间】:2011-11-08 02:38:48
【问题描述】:
我假设 INT(1) 与 TINYINT(1) 完全相同,但我真的不知道。每当我有只能是单个整数的值(例如值 0-9)时,我总是使用 INT(1) 来表示它是一个整数并且它只会是一个字符,我认为这意味着它只能是 0 到 9 之间的值(如果我错了,请向我解释)。我一直只是忽略您可以将数字转换为的其他类型的 INT。我不精通 MySQL,并且倾向于避免使用它来做更复杂的事情。
所以我的问题是,如果您为每种类型定义长度为 1,那么各种整数类型 INT、TINYINT、SMALLINT、MEDIUMINT 和 BIGINT 之间有什么区别吗? 如果没有,我应该无论如何都要使用它们(我可以看到使用它们来获得更多的语义含义,TINYINT 比 INT 更具体)?如果是这样,我是否可以轻松(和/或应该)浏览我的数据库并将所有 INT(1) 字段更改为 TINYINT(1) 字段?
【问题讨论】: