广州北大青鸟计算机职业培训学校
互联网技术培训、软件技术培训、大数据培训、云计算培训、数据分析培训信息网
当前位置:网站首页 > 计算机学校 > 惠州计算机学校 > 正文

MySQL命名规范及使用技巧

作者:黄君发布时间:2021-07-01分类:惠州计算机学校浏览:887


导读:不懂MySQL的前端不是一个好前端,作为Web应用方面好的关系数据库管理系统应用软件之一,MySQL体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。接下来就给大家简单分享。

       不懂MySQL的前端不是一个好前端,作为Web应用方面好的关系数据库管理系统应用软件之一,MySQL体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。接下来就给大家简单分享。

 

       一、命名规范

       1、库名、表名、字段名必须使用小写字母,并采用下划线分割。 

       a)MySQL有配置参数lower_case_table_names,不可动态更改,Linux系统默认为0,即库表名以实际情况存储,大小写敏感。如果是1,以小写存储,大小写不敏感。如果是2,以实际情况存储,但以小写比较。

       b)如果大小写混合使用,可能存在abc、Abc、ABC等多个表共存,容易导致混乱。

       c)字段名显示区分大小写,但实际使⽤用不区分,即不可以建立两个名字一样但大小写不一样的字段。

       d)为了统一规范, 库名、表名、字段名使用小写字母。

       2、库名、表名、字段名禁止超过32个字符。

       库名、表名、字段名支持最多64个字符,但为了统一规范、易于辨识以及减少传输量,禁止超过32个字符。

       3、库名、表名、字段名禁止使用MySQL保留字。

       当库名、表名、字段名等属性含有保留字时,SQL语句必须用反引号引用属性名称,这将使得SQL语句书写、SHELL脚本中变量的转义等变得⾮非常复杂。

       二、使用技巧

       1、将大字段、访问频率低的字段拆分到单独的表中存储,分离冷热数据。

       有利于有效利用缓存,防⽌止读入无用的冷数据,较少磁盘IO,同时保证热数据常驻内存提⾼高缓存命中率。

       2、表必须有主键,推荐使用UNSIGNED自增列作为主键。

       表没有主键,INNODB会默认设置隐藏的主键列;没有主键的表在定位数据行的时候非常困难,也会降低基于行复制的效率。

       3、禁止冗余索引和重复索引。

       索引是双刃剑,会增加维护负担,增大IO压力。(a,b,c)、(a,b),后者为冗余索引可以利用前缀索引来达到加速目的,减轻维护负担。primary key a;uniq index a;重复索引增加维护负担、占用磁盘空间,同时没有任何益处。

       4、合理使用覆盖索引减少IO,避免排序。

       覆盖索引能从索引中获取需要的所有字段,从而避免回表进行二次查找,节省IO。

       INNODB存储引擎中,secondary index(非主键索引,又称为辅助索引、二级索引)没有直接存储行地址,而是存储主键值。

       如果用户需要查询secondary index中所不包含的数据列,则需先通过secondary index查找到主键值,然后再通过主键查询到其他数据列,因此需要查询两次。覆盖索引则可以在一个索引中获取所有需要的数据,因此效率较高。

       例如SELECT email,uid FROM user_email WHERE uid=xx,如果uid不是主键,适当时候可以将索引添加为index(uid,email),以获得性能提升。 


点击咨询直接了解更多相关资料,我在惠州北大青鸟新方舟等你。

 

本文内容转载自网络,版权归原作者所有,如有侵权请联系我们进行删除。


标签:惠州计算机软件培训惠州计算件软件开发惠州计算机软件基础惠州计算机JAVA软件开发惠州Java培训学校惠州Java培训JAVA语言Java是什么Java开发JAVA入门


惠州计算机学校排行
标签列表
网站分类
文章归档
最近发表