在数据库中建表时记录长度为什么越短越好

ZDNet软件频道 时间:2009-12-03 作者: | 赛迪网 我要评论()
本文关键词:Server 服务器 SQL
【赛迪网-IT技术报道】在实际的工作和学习中,建表时记录的长度越短越好,越短则IO操作越少,查询越快。同样的道理,对于不会使用utf8的字段(如:email, url),也不要用utf8的格式,因为MySQL必须为char(10)保留30个字节。用指明not null的时候也最好指明,这样也可以减少记录的长度。

  【赛迪网-IT技术报道】在实际的工作和学习中,建表时记录的长度越短越好,越短则IO操作越少,查询越快。能用int就不要用bigint,而如果能用tinyint是最好的。定义varchar时按照业务需要设置长度,不要一律varchar(255),这样虽然并不会增加储存空间,但如以前提过的MySQL使用临时表是会把 varchar字段变成char,这样会增加临时表的大小,降低查询速度。同样的道理,对于不会使用utf8的字段(如:email, url),也不要用utf8的格式,因为MySQL必须为char(10)保留30个字节。用指明not null的时候也最好指明,这样也可以减少记录的长度。

  使用查询示例:

  select SQL_buffer_result address from user;

  注:使用SQL_buffer_result是强制使用临时表。表内有102000条记录,当address为varchar(255)时用时0.7秒,假如更改为varchar(30)则时间减少为0.2秒。 (责任编辑:卢兆林)

Server

服务器

SQL


百度大联盟认证黄金会员Copyright© 1997- CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号 京ICP备09041801号-159
京公网安备:1101082134