您的位置:首页 > 数据库 > MySQL

mysql字段类型优化

2016-09-20 17:08 155 查看
选型原则:在保证足够用的前提下尽量选择最小类型!

整型数据优化

①存储人的年龄应该使用哪种数据类型?答:使用tinyint类型(无符号型)

②存储乌龟的年龄应该使用哪种数据类型?答:使用smallinit类型(无符号型)

③存储一个1500万数据的数据表其主键id应该选择哪种数据类型?答:使用mediumint(无符号型),大约在0-1600万左右

①考虑空间问题

②考虑范围问题(unsigned无符号)

字符串类型优化

char(length)占用的空间为 固定的,与内容多少无关;

varchar(length)占用的空间为 实际内容字符个数*字节 + 1

①如果要存储一个11位的手机号码?答:选择char(11)比较合适

②如果要存储一个32位的md5加密密码?答:选择char(32)比较合适

③如果要存储一个用户名或一个标题,由于不确定具体要存放多少个字符,为了避免空间的浪费建议使用varchar类型。

④如果要存储一个描述信息(不超过250个汉字),使用varchar(255)比较合适。

如果要存储一个文本信息(文章内容),其超过了255个字符,建议使用text文本类型。

时间类型优化

在实际应用中,由于date类型主要用于存储时间信息,但是在php中,我们有相关的函数可以对整型数据和时间进行转化,所以实际应用中,大部分情况存储时间都是转化为整型数据直接存储的

5、枚举类型与集合类型

如果程序中有单选或多选情况,不建议使用varchar类型,而建议使用枚举类型或集合类型。

6、IP类型数据的存储

经常要保存IP地址,这个时候不建议使用varchar类型来保存数据,而建议使用整型来保存IP信息

//php中ip转整形

echo ip2long("192.168.1.1");

//整形转ip

echo long2ip(3232235777);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mysql