数据库开发规范样本.docx

数据库开发规范样本.docx

ID:61850063

大小:24.92 KB

页数:7页

时间:2021-03-24

数据库开发规范样本.docx_第1页
数据库开发规范样本.docx_第2页
数据库开发规范样本.docx_第3页
数据库开发规范样本.docx_第4页
数据库开发规范样本.docx_第5页
资源描述:

《数据库开发规范样本.docx》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。项目一部数据库开发规范资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。版本号日期修改者说明1.0-03-06注:对该文件内容增加、删除或修改均需填写此变更记录,详细记载变更信息,以保证其可追溯性。资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。1.命名规范1.1.对象新建的表,存储过程,包等要遵循以下规则对象名称前缀备注表见下表,根据功能分视图v_主键pk_索引idx_序列seq_存储过程pr_包pk_函数f_同义词s_数据库连dl_接(dblink)1.2.表表

2、名不得超过30个字母,全部采用大写字母,表的命名能够如下:模块缩写名_表的名称,如RES_NODE代表资源模块的节点;值班:DUTY_CALENDAR。1.3.字段名称字段名不得超过30个字母,必须以英文单词构成,每个单词之间以下划线隔开,全部采用大写字母。对复杂的大型应用系统而言,资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。必须建立表名和字段名的数据字典,并附于开发规范附录中,在命名时必须严格遵守数据字典。2.数据库对象管理2.1.一般规定数据库所有对象,包括表、视图、主键、索引、序列、存储过程、包等必须在数据库建模工具中进行管理并

3、保持与数据库完全同步。2.2.大小写在数据库模型、数据库脚本中,所有对象,包括表、视图、主键、索引、序列、存储过程、包等名称必须大写。3.语句书写规范3.1.尽量不使用某种数据库的特有功能为了保持可移植性,尽量不使用某种数据库的特有功能,如SQLServer专用的UniqueID,Oracle专用的Sequence的功能;3.2.查询sql语句尽量使用绑定变量3.3.尽最大可能不使用通配符在SQL语句中,LIKE关键字支持通配符匹配,但这种匹配特别耗费时间。如:SELECTAFROMABCWHEREALIKE'M%'。在A资料内容仅供您学习参考,如有不

4、当或者侵权,请联系改正或者删除。字段上建立了索引。把语句改为SELECTAFROMABCWHEREA>'M'ANDA<'N',在执行查询时会利用索引以提高响应速度。使用*通配符必须事先征得项目开发负责人同意。3.3.1Distinct使用distinct会增加查询和I/O的操作次数。应当避免使用distinct关键字。3.3.2嵌套查询SELECTAFROMCMS_USERWHEREUSER_NAMEIN(SELECTUSER_NAMEFROMCMS_DEPARTMENTWHEREDEPARTMENT=’电子办’)如果我们用连接来代替,且表关联放在条件

5、语句的最后部。即:SELECTAFROMCMS_USER,CMS_DEPARTMENTWHERECMS_DEPARTMENT.DEPARTMENT=’电子办’ANDCMS_DEPARTMENT.USER_NAME=CMS_USER.USER_NAME将提高一定的效率。查询嵌套层次越多,效率越低。应当尽量避免子查询。如果子查询不可避免,那么要在子查询中过滤掉尽可能多的行。资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。3.3.3排序利用索引自动以适当的次序输出时,能够避免对表中数据排序,当以下的情况发生时,排序就不能省略:?索引中不包括一个

6、或几个待排序的列;?groupby或orderby子句中列的次序与索引的次序不一样;?排序的列来自不同的表。正确地增建索引、合理地合并数据库表,能够避免不必要的排序。如果排序不可避免,那么应当试图简化它,如缩小排序列的范围等。3.3.4UNION如果不过滤多表中的重复数据,请使用UNIONALL;如果过滤多表中的重复数据,请使用UNION。3.3.5长语句避免使用很长、很复杂的查询语句,如果有特殊需求必须书写较长的SQL语句,应该把语句分解成若干部分,每一部分形成一个存储过程或函数。资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。3.3.

7、6大表尽可能使用分区大表分区:超过1G的表尽可能使用分区,分区的原则和尽可能和维护该表的机制结合起来。比如:保留10天数据,每天删除10天前的一天数据,在删除数据的时候,能够采用采用altertabletable_nametruncatepartitionpartition_name,而后altertabletable_namedroppartitionpartition_name;这里不直接使用drop的原因是减小数据库的开销。Truncate是在秒的级别中完成。3.3.7其它注意事项1)在条件语句中,如Where

8、a.s=b.c中将记录少的表放在等号的前部。表关联条件放在语句的最后部。2)不使用容易与系统关

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。