MySQL 数据库设计之各种 INTEGER 类型最佳实践

来源:互联网 发布:阿里云和腾讯云价格 编辑:程序博客网 时间:2024/06/08 16:33
MySQL 各种 INTEGER 类型占用存储空间、取值范围一览表
MySQL 各种 INTEGER 类型占用存储空间、取值范围一览表.png
最佳实践
  • UNSIGNED 只能存储非负整数
  • SIGNED 可以存储正整数、0、负整数
  • 对于总是正整数的存储(比如主键)的最佳实践是 UNSIGNED,因为这时它占用和 SIGNED 一样的存储空间,但取值范围多出一倍
  • BOOL、BOOLEAN 只不过是 TINYINT(1) 的另外一种写法而已
  • TINYINT(1)、BOOL、BOOLEAN 所占用的存储空间和 TINYINT 一样,都是一个字节,而不是一位
  • TINYINT(1) 所能存储的值的范围和 TINYINT 一样,都是 -128 到 127
  • TINYINT(1) 只是在显示的时候作为一个位进行输出而已
参考资料
  • http://dev.mysql.com/doc/refman/5.6/en/integer-types.html
  • http://stackoverflow.com/questions/4401673/mysql-boolean-tinyint1-holds-values-up-to-127
1 0