greenplum函数编码规则
一、g reenplum函数命名语法:
A、“表”单数形式命名
语法:[func]_[maintablename]_([fieldname]) _([action])
创建/删除/更新/等操作采用单数表形式命名
func_OfferThread_Create
func_OfferThread_Update
func_OfferThread_Delete
其他辅助操作:
func_OfferThread_Status_Update
func_OfferThread_PrevNext
func_OfferThread_Get (如果不用ByID指明则默认是ID)
B、“表”复数形式命名
语法:[func]_[maintablenames]_[action(condition)]
读取列表或分页集合采用复数表形式
func_OfferThreads_Get
func_OfferThreads_GetByName (如果不用By指明则默认是ID)
func_OfferThreads_Delete (默认批量按用户编号删除)
func_OfferThreads_DeleteByUserName (批量按用户登录名删除)
func_OfferThreads_DeleteByName (批量按名称删除)
func_OfferThreads_GetThreadSet (读取分页)
二、变量规则
1、变量名全部采用小写,局部变量名使用“v_”开头,输入参数以“vi_”开头,输出
参数以“vo_”开头,输入输出参数用vio_开头。所有输入参数必须显示声明。
2、游标的命名:游标统一用后缀“_cur”命名。
3、使用命名的常量以避免硬编码,使用常量包,常量统一用cn_的前缀命名。
4、当变量代表列时,使用%TYPE属性,当变量实际上表示数据库表的某列数据时,为
避免数据库结构修改对变量的影响,应统一使用%TYPE属性对变量命名。
greenplum数据库
三、事务处理规范
1、在需要分割事务以使主事务的提交或者回滚独立于子事务的提交及回滚时,应使用
自治事务。
2、所有的函数均统一在结束处统一用ROLLBACK。
四、日志书写规范
1、采用公共的函数完成后台日志数据记录。(公共函数完成输出错误信息提示、记录
错误信息内容到数据库表、系统级的错误代码及错误信息等)
2、后台日志的信息记录级别包括INFO、WARN、ERROR,其定义以及不同级别日志的
采集标准如下:
A.INFO—提示信息,供开发人员调试使用,由开发人员自行确定,主要是调试信
息,程序运行中普通信息提示。
B.WARN—警告信息,可能导致严重错误的警告信息
C.ERROR—错误信息,导致系统运行错误的信息。
D.所有表操作的错误处理部分均应记录日志信息。
五、错误处理规范
1、凡是涉及到表操作(insert、update、select、delete)的sql语句,都必须进行错误捕
捉,不能将错误带到后面的语句。
2、从表中select数据的语句,应严格区分NO_DA TA_FOUND 和TOO_MANY_ROWS的
错误,并将相应错误信息填入错误信息。
A.NO_DATA_FOUND 多数为查询条件问题导致无数据返回(用户级错误)。
B.TOO_MANY_ROWS 应该是数据表内数据异常导致(系统级错误)。
3、所有函数(存储过程)的统一出口一律在函数的结束部分,不允许中间返回。
4、在每一个异常处理部分,都要定义WHEN OTHER 子程序,以便捕获所有没有显示
处理或其他类型的异常。
5、所有程序中捕获到的错误,均转换成对应的errcode、errmsg,通过输出参数返回给
调用者,所有函数(存储过程)结束前应统一捕获系统异常。
6、在每个函数(存储过程)的入口处统一先将返回错误代码(errCode)设置为-1,功能处
理成功结束后再将错误代码(errCode)设置为0(成功),避免程序过程中因错误未能正确捕获,导致功能未能完成,而程序却成功返回的情况出现。
7、错误信息描述应准确,业务相关的错误应将输入数据拼接到错误信息。
六、书写规范
1、PL/pgSQL语句的所有表名、字段名遵照数据字典的定义,表名、字段名、所有脚
本全部小写;系统保留字、内置函数名、PL/pgSQL保留字全部大写。
2、连接符OR、IN、AND,以及=、<=、>=等前后加上一个空格。
3、对较为复杂的SQL语句加上注释,说明算法、功能。
4、注释风格,注释单独成行、放在语句前面。
5、应对不易理解的分支条件表达式加注释。
6、对重要的计算应说明其功能。
7、过长的函数实现,应将其语句按实现的功能分段加以概括性说明。
8、常量及变量注释时,应注释被保存值的含义(必须),合法取值的范围。
9、可采用单行/多行注释(-- 或/* */ 方式)。
10、TAB 统一定义为4个空格,建议使用pgAdmin作为SQL书写工具。
11、多表连接时,使用表的别名来引用列。如果单个单词表,取前两位或者前三位。
如果多个单词表,取每个单词的前一位,总数控制在三位。
12、一行有多列,超过80个字符时,基于列对齐原则,采用下行缩进。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。