数据库设计与SQL查询优化

1、概述

 数据库设计与SQL查询优化_第1张图片

 

2、数据库设计原则

    1)熟悉需求

     2)开发符合规范的数据库

    3)审核数据库设计

审核组除了要审核数据库设计中的逻辑问题;还要关注数据字典是否详细易懂;数据表结构是否冗余及提出修改建议。

 3、数据库设计规范

    1)命名规范

数据库设计与SQL查询优化_第2张图片

     2)明确实体和数据表的关系

    3)一张数据表不能既没有主键也没有外键

    4)基本表特征

     5)必须满足第一第二范式,尽量满足第三范式

数据库设计与SQL查询优化_第3张图片

     6)简洁的E-R图

数据库设计与SQL查询优化_第4张图片

菱形

    7)符合完整性约束

4、使用PowerDesigner设计数据库

数据库设计与SQL查询优化_第5张图片

数据库设计与SQL查询优化_第6张图片

数据库设计与SQL查询优化_第7张图片

数据库设计与SQL查询优化_第8张图片

数据库设计与SQL查询优化_第9张图片

数据库设计与SQL查询优化_第10张图片

数据库设计与SQL查询优化_第11张图片

 数据库设计与SQL查询优化_第12张图片

数据库设计与SQL查询优化_第13张图片

数据库设计与SQL查询优化_第14张图片

数据库设计与SQL查询优化_第15张图片

 数据库设计与SQL查询优化_第16张图片

 数据库设计与SQL查询优化_第17张图片

数据库设计与SQL查询优化_第18张图片

数据库设计与SQL查询优化_第19张图片

数据库设计与SQL查询优化_第20张图片

数据库设计与SQL查询优化_第21张图片

5、数据库设计技巧

 数据库设计与SQL查询优化_第22张图片

数据库设计与SQL查询优化_第23张图片

 6、劣质SQL判断条件

数据库设计与SQL查询优化_第24张图片

 7、索引

数据库设计与SQL查询优化_第25张图片

数据库设计与SQL查询优化_第26张图片

数据库设计与SQL查询优化_第27张图片

 事例:

数据库设计与SQL查询优化_第28张图片

数据库设计与SQL查询优化_第29张图片

数据库设计与SQL查询优化_第30张图片

数据库设计与SQL查询优化_第31张图片

数据库设计与SQL查询优化_第32张图片

数据库设计与SQL查询优化_第33张图片

 8、索引类型

数据库设计与SQL查询优化_第34张图片

数据库设计与SQL查询优化_第35张图片

数据库设计与SQL查询优化_第36张图片

数据库设计与SQL查询优化_第37张图片

 数据库设计与SQL查询优化_第38张图片

数据库设计与SQL查询优化_第39张图片

数据库设计与SQL查询优化_第40张图片

 数据库设计与SQL查询优化_第41张图片

 9、反向键索引

数据库设计与SQL查询优化_第42张图片

 数据库设计与SQL查询优化_第43张图片

事例:

数据库设计与SQL查询优化_第44张图片

数据库设计与SQL查询优化_第45张图片

注:主要用于多用户执行频繁插入操作

 10、基于函数的索引

数据库设计与SQL查询优化_第46张图片

数据库设计与SQL查询优化_第47张图片

数据库设计与SQL查询优化_第48张图片

11、位图索引

数据库设计与SQL查询优化_第49张图片

数据库设计与SQL查询优化_第50张图片

数据库设计与SQL查询优化_第51张图片

 12、表分区

数据库设计与SQL查询优化_第52张图片

数据库设计与SQL查询优化_第53张图片

 优点:

1)提高数据的可用性

2)减少管理负担

3)改善语句性能

 

 数据库设计与SQL查询优化_第54张图片

13、区间分区

数据库设计与SQL查询优化_第55张图片

数据库设计与SQL查询优化_第56张图片

 数据库设计与SQL查询优化_第57张图片

数据库设计与SQL查询优化_第58张图片

 数据库设计与SQL查询优化_第59张图片

数据库设计与SQL查询优化_第60张图片

数据库设计与SQL查询优化_第61张图片

 14、散列分区

数据库设计与SQL查询优化_第62张图片

 数据库设计与SQL查询优化_第63张图片

 数据库设计与SQL查询优化_第64张图片

数据库设计与SQL查询优化_第65张图片

数据库设计与SQL查询优化_第66张图片

 15、列表分区

数据库设计与SQL查询优化_第67张图片

数据库设计与SQL查询优化_第68张图片

数据库设计与SQL查询优化_第69张图片

 数据库设计与SQL查询优化_第70张图片

 数据库设计与SQL查询优化_第71张图片

 数据库设计与SQL查询优化_第72张图片

数据库设计与SQL查询优化_第73张图片

 数据库设计与SQL查询优化_第74张图片

数据库设计与SQL查询优化_第75张图片

 数据库设计与SQL查询优化_第76张图片

 

 16、分区维护

数据库设计与SQL查询优化_第77张图片

数据库设计与SQL查询优化_第78张图片

 数据库设计与SQL查询优化_第79张图片

数据库设计与SQL查询优化_第80张图片

数据库设计与SQL查询优化_第81张图片

 数据库设计与SQL查询优化_第82张图片

 数据库设计与SQL查询优化_第83张图片

数据库设计与SQL查询优化_第84张图片

17、sql语句优化的途径

 数据库设计与SQL查询优化_第85张图片

数据库设计与SQL查询优化_第86张图片

数据库设计与SQL查询优化_第87张图片

 

你可能感兴趣的:(SQL查询优化)