1 / 16
文档名称:

数据库开发规范.docx

格式:docx   大小:49KB   页数:16页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

数据库开发规范.docx

上传人:雨林书屋 2022/6/10 文件大小:49 KB

下载得到文件列表

数据库开发规范.docx

文档介绍

文档介绍:数据库开发规范
数据库开发规范
1/16
数据库开发规范
项目一部数据库开发规范
版本号日生时,排序就不能省略:
索引中不包括一个或几个待排序的列;
groupby或orderby子句中列的序次与索引的序次不同样;
排序的列来自不同的表。
正确地增建索引、合理地归并数据库表,能够防止不必要的排序。如果排序不可防止,那么应当试图简化它,如缩小排序列的范围等。

数据库开发规范
数据库开发规范
12/16
数据库开发规范
如果可是滤多表中的重复数据,请使用据,请使用UNION。

UNIONALL;如果过滤多表中的重复数
数据库开发规范
数据库开发规范
16/16
数据库开发规范
长语句
防止使用很长、很复杂的查问语句,如果有特殊需求必须书写较长的SQL语句,应当把语句分解成若干部分,每一部分形成一个存储过程或函数。
大表尽可能使用分区
大表分区:超过1G的表尽可能使用分区,分区的原则和尽可能和维护该表的体制联合起来。比方:保存10天数据,每日删除10天前的一天数据,在删除数据的时候,能够采用采用altertabletable_nametruncatepartition
partition_name,尔后altertabletable_namedroppartitionpartition_name;
这里不直接使用drop的原因是减小数据库的开销。Truncate是在秒的级别中达成。
其他注意事项
在条件语句中,如Where=中将记录少的表放在等号的前部。表关系条件放在语句的最后部。
不使用容易与系统重点字重复的单词来命名,如ID,DATE等,但能够使用如
NODEID,BUYDATE等能够来命名;
SQL语句用大写字母(字段中的内容除外);
编写ddl和dml时,每个语句后边必须加上分号;
数据库开发规范
数据库开发规范
16/16
数据库开发规范
关于定期增加性的性能数据表,必须成立有效的索引;
查问语句的Where语句必须落在索引上。
高效的sql语句

RBO(rule-basedoptimizer)
CBO
驱动表
1)2张行数不一致的表连结
表TAB1行数:16,384行
表TAB2行数:1行
SELECTCOUNT(*)FROMTAB2,TAB1;
SELECTCOUNT(*)FROMTAB1,TAB2;2)3张表连结
SELECT*
WHEREBETWEEN1000AND2000
AND=
AND=;
○SELECT*
FROMLOCL,
CATC,
EMPE
WHEREBETWEEN1000AND2000
AND=
AND=;
数据库开发规范
数据库开发规范
15/16
数据库开发规范
Where语句次序的效率
使用索引惹起的where语句效率使用AND语句时行数多的放在前面
SELECT*
FROMempE
WHEREemp_sal>50000
ANDemp_type='MANAGER'
AND25<(SELECTCOUNT(*)FROMEMPWHEREemp_mgr=;
SELECT*
FROMempE
WHERE25<(SELECTCOUNT(*)FROMEMPWHEREemp_mgr=
ANDemp_sal>50000
ANDemp_type='MANAGER';
使用OR语句时,行数多的放在后边
SELECT*FROMempE
WHERE25<(SELECTCOUNT(*)FROMEMPWHEREemp_mgr=OR(emp_sal>50000
ANDemp_type='MANAGER');
SELECT*FROMempE
WHERE(emp_sal>50000
ANDemp_type='MANAGER')
OR25<(SELECTCOUNT(*)FROMEMPWHEREemp_mgr=;
2)ROWID的使用
使用ROWID的