一、命名规范(使用命名规范可以极大减少记忆时间和利用代码提示功能提高使用效率)
对象类型 表 视图 序列 索引 主键 触发器 包 过程 函数 普通变量 记录变量 游标变量 IN OUT变量 定时任务 前缀 T_ V_ SEQ_ IDX_ PK_ TRI_ PKG_ P_ F_ VAR_ 范例 T_LQ_TASK V_HNT_PRD_DATA SEQ_LQ_SERIAL__SERIAL_ID IDX_LQ_SERIAL__SERIAL_CODE PK_LQ_SERIAL__SERIAL_ID TRI_LQ_SERIAL__UPDATE_CODE PKG_LQ_REPORT P_SET_TASK_CODE F_STAT_FANG_AMOUNT_BY_COMPANY VAR_PLATE_ID 额外说明 前缀后是模块名,然后是用途 V代表视图,HNT是混凝土的缩写,PRD_DATA指的是生产数据 前缀后是表名,然后是__,然后是字段名,如果确定不会歧义,可以写成SEQ_LQ_SERIAL__ID 前缀后是表名,然后是__,然后是字段名,如果超长,可以使用缩写 前缀后是表名,然后是__,然后是字段名,如果超长,可以使用缩写 除非特别允许,否则所有存储过程和函数必须放在包里,也因此,命名中不需要模块信息,比如PKG_LQ_MAIN.P_SET_TASK_CODE 变量命名必须有意义!除了循环体,禁止使用i,j,flag这种变量名 如果是字符类型,应使用后缀写成I_SIGN_DATE_STR 前缀后是模块名,然后是用途 VAR_..._REC VAR_PLATE_REC CUR_ CUR_PLATE I_、O_、IO_ I_SIGN_DATE B_ B_JZ_OVERTIME
另外,定义字段时,应避免直接使用ID,PID,NAME之类被用于ORACLE保留字的命名,应使用类似ITEM_ID,
JDH_CODE这样的写法,避免使用复数。
模块名由专门文档维护,应保证JIRA,JAVA,ORACLE使用相同的模块名和常用单词 常用单词整理(未完成,JAVA和ORACLE通用):ID、CODE(**编号,编码),NUM(序号)、ITEM(条目) 时间字段使用DATE而不是TIMESTAMP 存放中文的字段使用NVARCHAR 二、其他编程规范
存储过程和函数的定义,必须写注释说明使用方法和适用范围!
对于从网页上录入数据的主表,一般应包含以下四个字段
CREATE_TIME,CREATE_BY,UPDATE_TIME,UPDATE_BY
避免使用隐式的类型转换,比如select PLATE_ID from T_LQ_TASK where LINE = 3,这里LINE是CHAR(1)类型 不要将空的变量值直接与比较运算符(符号)比较。如果变量可能为空,应使用is null 或is not null 或nvl 函
数进行比较,以下代码不符合规范 if v_user_name = null then… 使用insert 语句一定要给出要插入的字段列表,这样即使更改了表结构加了字段也不会使用引用了本表的
存储过程失效
尽可能地使用相关表字段的类型定义,形如%type、%rowtype in、out 参数应按类别分开书写,不要交叉
布尔型的字段,以一些助动词开头,更加直接生动:如,用户是否有留言HasMessage,是否通过检查
IsChecked
因篇幅问题不能全部显示,请点此查看更多更全内容