银行软件研发中心培训资料:《基于Oracle数据库的应用开发技术规范》讲义

银行软件研发中心培训资料:《基于Oracle数据库的应用开发技术规范》讲义.ppt

数据库物理设计规范
SQL语句编写规范
PL/SQL开发规范
数据对象命名规范

表使用原则
创建数据表的语句应指定表空间。
除参数表以及本身就是记录增量数据的表结构,其他表应设计支持增量条件的字段,如最后修改日期等。
对有清理要求的表结构,应设计支持清理条件的字段,如状态,最后修改日期等。

字符类型使用原则
创建数据表的语句应指定表空间。
除参数表以及本身就是记录增量数据的表结构,其他表应设计支持增量条件的字段,如最后修改日期等。
对有清理要求的表结构,应设计支持清理条件的字段,如状态,最后修改日期等。

索引的使用原则
一个联机表上的索引不宜超过5个。
对于经常INSERT/UPDATE/DELETE操作的表,应尽量少创建索引。
根据应用特点,当SQL语句返回的行数占整个表总行数的比例 < = 5%时,宜建立索引。 以下列上宜建索引:频繁进行排序或分组、频繁使用DISTINCT查询、表连接的连接字段等。 使用复合索引时应考虑各个数据项在索引中的相对位置,将最常用的列放在第一位,将不太常用的列放在稍后面的位置。 分区表的使用原则 对于拥有较多数据的表(ROWS>1000000+)可使用分区表,对于ROWS>5000000+的表宜使用分区表;
分区的关键字应是WHERE子句中的查询条件之一。
从数据并发访问的角度考虑,宜将地区作为分区键值,从数据操作方便的角度考虑(例如数据清理),宜将时间作为分区键值。若两方面都要顾及,宜使用组合分区。

包(PACKAGE)使用原则
存在私有函数、过程或私有变量,只能被某一函数或过程调用时,宜将这个私有的函数、过程或私有变量放入调用主函数或过程所在的包内。
函数或过程的参数里有自定义的类型时,宜建立包将该类型的定义和该函数或过程的定义都放入包中。
当具有一些能够处理相关的任务的程序代码希望共享代码时宜使用包。

DML语句使用原则
对于DELETE操作频繁的表,宜改用变更状态的方法来实现Delete操作,对于删除全表的操作,宜使用TRUNCATE功能来实现。
SQL书写规范
在SELECT、INSERT和UPDATE等语句中,应使用明确的字段名,避免使用”*”。
在整个SQL语句中,除了变量名以外,宜使用大写。

程序编写原则
变量声明原则
变量类型声明时,如果含义和应用表某字段含义或某变量相同时,应使用%TYPE声明。
记录类型声明时,如果含义和某应用表行数据或某CURSOR定义相同时,应使用%ROWTYPE声明。
集合使用原则
引用集合中的元素时宜使用FORALL语句,不宜使用FOR循环语句
在SELECTINTO,FETCHINTO和RETURNINGINTO语句中宜使用BULKCOLLECT子句

PL/SQL书写规范
变量命名规则
输入参数格式宜为:IN_参数名,参数名全部使用大写。
输出参数格式宜为:OUT_参数名,参数名宜使用大写。
输入输出参数格式宜为:IO_参数名,参数名宜使用大写。
程序中的变量宜由’v_’+变量名组成,参数名宜使用小写。
包中成员变量的命名宜由’v_’+变量名组成,参数名宜使用小写。
将查询语句做成字符串拼接时,WHERE语句的拼接变量名宜统一为v_where,SELECT语句的拼接变量名宜统一为v_select
记录(RECORD)的类型(TYPE)命名宜由’T_’+变量名组成,名称宜使用大写。
游标命名宜由’CUR_’+变量名组成,名称宜使用大写。
引用游标(REFCORSOR)的命名宜由’REF_’+变量名组成,名称宜使用大写。

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注