共计 446 个字符,预计需要花费 2 分钟才能阅读完成。
- 为未来预留足够扩展,alter table 很麻烦
- 永远选足够的最小长度
整型
- 整型有五个,tinyint smallint mediumint int bigint
- 对应占用 1,2,3,4,8 字节
- 如果不用负数,后面加 unsigned,分别大一倍,为 255,6 万多,一千多万,四十多亿,四十多亿平方
- 不要指定长度,int(1) 和 int(99) 没区别,其实都是 int(11) 的效果
- 无符号为 int(10)
- int(0) 或 int(-1) 都会自己修正为 int(11)
字符串
- 固定长度用 char,比 varchar 省一字节
- 长度非常不固定用 varchar
- char 后面的空格会去掉
- 二进制用 binary*
- 大文件是 blob 和 text
其他
- 时间只能到秒,5.6.4 版本好像到微秒
- 1970 年到 2038 年 1 月用 timestamp 四字节
- 其他用 datetime,八字节
- 还有 year,date 等
- 枚举用 enum,省空间
- integer,boolean 都是别名而已
- 实数用 double 或 float,需精确要 decimal
- 表关联字段最好同类型
- 新版本有 json 类型
正文完