77范文网 - 专业文章范例文档资料分享平台

ORACLE编程规范(3)

来源:网络收集 时间:2019-04-10 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

DESTFIELDNAME5, -- 注释 DESTFIELDNAME6, -- 注释 DESTFIELDNAME7) -- 注释 SELECT SRCFIELDNAME1, -- 注释 SRCFIELDNAME2, -- 注释 SRCFIELDNAME3, -- 注释 SRCFIELDNAME4, -- 注释 SRCFIELDNAME5, -- 注释 SRCFIELDNAME6, -- 注释 SRCFIELDNAME7 -- 注释 FROM T_SRC_TABLE_NAME; END;

↑ 关键字右对齐

说明:

1、 在错误的写法中,虽然SELECT语句部分的SRCFIELDNAME1, SRCFIELDNAME2,

SRCFIELDNAME3可以写在一行中,但由于INSERT INTO语句部分中DESTFIELDNAME1, DESTFIELDNAME2写在一行中,而DESTFIELDNAME3在下一行,因此SELECT语句中每行的字段应与INSERT INTO语句中的字段一一对应(如正确的写法A);

2、 INSERT INTO语句中的各个字段折行后,应缩进并与上一字段左对齐(如正确的写法

B),或者与INTO关键字左对齐(如正确的写法C);

3、 SELECT语句中折行后的第一个字段名应缩进并与上一行的第一个字段名左对齐。

规则:INSERT INTO语句中,如果需要对每个字段增加注释,应将每个字段单独列为一行,并在行尾增加注释。 示例1:

INSERT INTO T_DEST_TABLE_NAME (DESTFIELDNAME1, -- 注释1 DESTFIELDNAME2, -- 注释2 DESTFIELDNAME3) -- 注释3 VALUES (FieldValue1, FieldValue2, FieldValue3);

或者

2013-03-28

第11页,共71页

INSERT INTO T_DEST_TABLE_NAME ( DESTFIELDNAME1, -- 注释1 DESTFIELDNAME2, -- 注释2 DESTFIELDNAME3) -- 注释3 VALUES (

FieldValue1, FieldValue2, FieldValue3);

或者

INSERT INTO T_DEST_TABLE_NAME (

DESTFIELDNAME1, -- 注释1 DESTFIELDNAME2, -- 注释2 DESTFIELDNAME3 -- 注释3 ) VALUES (

FieldValue1, FieldValue2, FieldValue3 );

其他说明:

1、 在规范的代码模板中详细给出了各种情况下的范例写法,请编码过程参考; 2、 在数据库脚本的编码过程中,请严格按照代码模板进行书写;

3、 对于模板中未涉及的情况,应在保证符合上述规范原则,同时和代码模板中的风格保

持一致的前提下,根据实际情况灵活处理。

3.3 空格及换行

规则:不允许把多个短语句写在一行中,即一行只写一条语句。 示例:

v_Variable1 := 1; v_Variable2 := 'abc';

应写成:

v_Variable1 := 1; v_Variable2 := 'abc';

2013-03-28 第12页,共71页

说明:两个赋值语句不能写在一行中,必须分两行写。

规则:相对独立的程序块之间、变量说明之后必须加空行。 示例:

v_Variable1 := 1;

IF v_BeginDate IS NULL THEN v_BeginDate := SYSDATE - 15; END IF;

应写成:

-- 初始化局部变量 v_Variable1 := 1;

-- 判断开始时间

IF v_BeginDate IS NULL THEN v_BeginDate := SYSDATE - 15; END IF;

说明:两个程序块在逻辑上相对独立,应用空行加以分隔,同时增加注释。

建议:建议对超过120字符的语句要分行书写,长表达式应在低优先级操作符处换行,操作符或关键字放在新行之首。划分出的新行应适当地缩进,使排版整齐、语句可读。是否分行应根据实际情况而定,原则是保证代码整齐、语句可读。 分行示例:

120字符 ↓

?? (a * b * c * d) + (e * f) + ??

应写成:

?? (a * b * c * d) + (e * f) + ??

说明:

1、 加法的优先级低于乘法,因此应在加号处换行;

2、 两组乘法虽然在逻辑上会先于加法执行,但显式加上括号使可读性更强。

规则:调用函数或过程时,如果参数列表超过120字符,应根据逻辑内容进行换行,或者每个参数占用一行。

2013-03-28

第13页,共71页

示例:

错误的写法:

120字符 ↓

P_PROCEDURE(i_Param1, i_Param2, i_Param3, o_Param1, oParam2, ...);

正确的写法A:

P_PROCEDURE(i_Param1, i_Param2, i_Param3, o_Param1, o_Param2, ...);

正确的写法B:

P_PROCEDURE(i_Param1, -- 注释 i_Param2, -- 注释 i_Param3, -- 注释 o_Param1, -- 注释 o_Param2, -- 注释 ...) -- 注释

说明:

1、 因为前三个为输入参数,后两个为输出参数,因此在第3、4参数之间换行比较清晰

(如正确的写法A);

2、 有时为了增加注释,可以使每个参数皆占用一行(如正确的写法B); 3、 参数换行以后与上一行的第一个参数对齐。

规则:双目运算符、操作符前后应以空格分隔,间隔符之后应以空格分隔。 示例:

v_DateVar:=TO_DATE('2001-01-01 01:30:00','YYYY-MM-DD HH24:MI:SS');

v_IntegerVar1:=v_IntegerVar2+v_IntegerVar3;

IF v_Number>0 THEN

应写成:

v_DateVar := TO_DATE('2001-01-01 01:30:00', 'YYYY-MM-DD HH24:MI:SS'); ↑ ↑ 赋值符前后加空格 逗号后面加空格

v_IntegerVar1 := v_IntegerVar2 + v_IntegerVar3; ↑ ↑ 赋值符前后加空格 加号前后加空格 2013-03-28

第14页,共71页

IF v_Number > 0 THEN ↑ 比较符号前后加空格

建议:不同优先级的操作符混合使用时,建议使用括号进行隔离。 示例:

?? a * b + c ??

应写成:

?? (a * b) + c ??

说明:使用括号使代码的优先级更加清晰,而且可以避免犯错。

建议:SQL语句中存在不同优先级的关系运算符时,建议使用括号。 示例:

WHERE FIELD1 > 1 AND FIELD2 < SYSDATE OR FIELD3 > SYSDATE + 3

应写成:

WHERE (FIELD1 > 1 AND FIELD2 < SYSDATE) OR (FIELD3 > SYSDATE + 3)

说明:如果SQL语句的条件复杂,很容易出现问题,因此增加括号可以提高可阅读性。

3.4 创建表

规则:脚本中的字段名缩进为4个空格。

规则:脚本中字段名称、字段类型、DEFAULT关键字应左对齐,NULL/NOT NULL应右对齐(也可以认为就是NULL关键字左对齐)。 示例:

CREATE TABLE T_WF_TABLE_NAME (

INTFIELD DATEFIELD )

TABLESPACE SERVICE_MAIN_DAT;

INT

NOT NULL, NOT NULL, NULL, NULL

FLOATFIELD NUMBER(4, 2)

DATE

VARCHAR2FIELD

DEFAULT 1.23

DEFAULT SYSDATE

VARCHAR2(200)

说明:至于每行中的每个项目之间使用多少个空格没有明确要求,只要求从纵向上各个字

2013-03-28

第15页,共71页

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库ORACLE编程规范(3)在线全文阅读。

ORACLE编程规范(3).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/584069.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: