Mysql 建表 数据类型选择
2015-08-21 21:41
567 查看
整数类型:
tinyint、smallint、mediumint、int、bigint分别使用8、16、24、32、64位存储空间,在保证储值范围够用的情况下,选择最小的数据类型
实数类型(包含小数部分时):
decimal
字符串类型:
varchar类型 存储可变长字符串
char 存储固定长度的字符串 性能最高 可用char(1) 来存储T/F 布尔
日期和时间类型:
datetime 能保存大范围的值 1001年到9999年 他把日期和时间封装到 YYYYMMDDHHMMSS整数中 与时区无关 使用8个字节存储空间
timestamp 保存了从 1970年1月1日午夜以来的毫秒数 范围1970年到2038年 存储值会根据时区发生变化 通常应该尽量使用 timestamp 比 datetime性能高
特殊类型数据:
时间戳 yyyymmddhhmmss 一般用int存储 可以用 from_unixtime等函数转换为时间类型 效率较高
IP地址 一般用int(10)存储 inet_aton() ip->数字 inet_ntoa() 数字->ip
tinyint、smallint、mediumint、int、bigint分别使用8、16、24、32、64位存储空间,在保证储值范围够用的情况下,选择最小的数据类型
实数类型(包含小数部分时):
decimal
字符串类型:
varchar类型 存储可变长字符串
char 存储固定长度的字符串 性能最高 可用char(1) 来存储T/F 布尔
日期和时间类型:
datetime 能保存大范围的值 1001年到9999年 他把日期和时间封装到 YYYYMMDDHHMMSS整数中 与时区无关 使用8个字节存储空间
timestamp 保存了从 1970年1月1日午夜以来的毫秒数 范围1970年到2038年 存储值会根据时区发生变化 通常应该尽量使用 timestamp 比 datetime性能高
特殊类型数据:
时间戳 yyyymmddhhmmss 一般用int存储 可以用 from_unixtime等函数转换为时间类型 效率较高
IP地址 一般用int(10)存储 inet_aton() ip->数字 inet_ntoa() 数字->ip
相关文章推荐
- mysql 幻读
- 数据库 mysql 优化器原理
- MySQL 调优/优化的 100 个建议
- mysql 正则表达式 regexp rlike not rlike
- keepalived+mysql双主实现数据库冗余
- mysql查询各种类型的前N条记录
- MySQL的重新安装问题
- 新安装的wampserver怎么使用本机已有的mysql作为数据库
- mysql带参存储过程
- mysql查看正在执行的sql语句
- mysql数据库优化之表的设计和慢查询定位
- MySQL外键设置中的的 Cascade、NO ACTION、Restrict、SET NULL
- mysql 设置参照完整性
- 使用gdb编译调试mysql
- Mysql-半同步
- MySQL数据乱码
- mysql 设置用户指定访问某个数据库。
- MySql查询总结
- Mysql删除多表及多表记录sql语句
- 2.DB-Mysql++实例