<1>.索引 1.单表索引不超过5个; 2.单个索引不超过5列; 3.innodb主键推荐自增列; 主键不改被修改; 字符串不应该做主键; 若不指定主键,innodb会使用唯一且非空值索引代替; 4.若是复合索引,区分度大的前置; 5.核心sql优先考虑索引; 6.区分度的的字段前置; 7.避免冗余或重复索引:合理创建联合索引: index(a,b,c)相当于:index(a),index(a,b),index(a,b,c) 8.不在低基数列建索引,如性别; 9.不在索引列进行数学、函数运算; 10.尽量不要使用外键; 11.不使用%前导查询,如like"%xxx",无法使用索引; 12.不使用反响查询,如not in、not like,无法使用索引; 13.尽量要有主键。
<2>.字段 1.禁止使用TEXT、BLOG类型; 2.将字符转化为数字; 3.使用TINYINT代替ENUM类型; 4.字段长度尽量按照实际进行分配,不要随意给一个大容量; 5.如果可能,所有字段尽量not null; 6.使用unsigned存储非负整数; 7.INT类型固定占用4个字节存储; 8.使用TIMESTAMP存储时间; 因为timestamp使用4字节,datetime使用8字节,同时timestamp具有自动复制以及自动更新的特性。 9.禁止在数据库中存储明文密码;
<3>.sql 1.禁止使用存储过程、触发器、视图等;让数据库做最擅长的事,降低业务耦合度; 2.避免使用大表的join; 3.避免数据库中进行数学运算,数学运算和逻辑判断,无法使用索引; 4.减少与数据库的交互次数; 5.拒绝大sql,拆分成小sql,充分使用query cache,充分利用多喝CPU. 6.使用in 代替 or,in 的值不超过1000个; 7.禁止使用order by rand(); 因为使用order by rand() 会将数据从磁盘读取进行排序,耗费大量IO和CPU,可以再程序中获取一个rand值,然后通过数据库中获取对应的值。 8.使用union all 而不是 union. 9.禁止单条sql语句同时更新多个表(跨表更新); 10.不使用select*; 11.禁止使用test库;
<4>.行为规范 1.禁止super权限应用账号存在; 2.对单表的多次order必须合并为一次操作; 3.不在业务高峰期批量更新、查询数据库。
----摘自京东内部规范。
相关推荐
Markdown是一种轻量级标记语言,排版语法简洁,让人们更多地关注内容本身而非排版。. 它使用易读易写的纯文本格式编写文档,可与HTML混编
WorkAdventure Map入门套件这是一个入门工具包,可帮助您为构建自己的地图。 要了解如何使用该入门工具包,请按照的教程进行操作。
随着不同物种基因组测序的快速发展,产生了大量的DNA 序列信息,这时 就需要一种简便而快速的统计分析工具来对这些数据进行有效的分析,以提取其 中包含的大量信息。MEGA 就是基于这种需求...软件可以免费下载使用。
观看psc-make和karma构建生成文档如何使用它默认目录结构 root - src/ -- Source code - test/ -- Tests code - dist/ -- temporary directory - node_modules -- symlinks to project node_modules/ and psc-maked ...
- FIX: The TFlexPanel.FindControlAtPoint method maked virtual to realize RealTime-capability when on mouse cursor moving the flex-object search not occurs. - FIX: After deleting the selected points ...
使用reactjs轻松搜索 search by a product name search by only stocked products checking the checkbox maked a simple style in the project
fenyekongjian do myself another maked by other people
this code maked the use of java to run any exe filee
System.out.println("maked a folder!"); } File _file = new File(srcFileName); //读入文件 Image src = javax.imageio.ImageIO.read(_file); //构造Image对象 int wideth=src.getWidth(null); //得到源图宽 ...
A qt program run in N900. maked by qt sdk and Fcam API.
vb sql 图书馆管理系统、 this is for the system maked by vb and sql
This is ArcGIS Android 10.2.4 API Reference Maked for Dash. Tested on and Based on Esri's Android API reference and Copyright :copyright: Esri. 由 Esri ArcGIS Android API 参考文档制作,版权归Esri所有...
partI Writing (30 minute) <br>注意:此部分试题在答题卡1上。 <br>Directions:For this part ,you are allowed 30minute to write a short essay on the topic of students selecting their fectures....