数据库编程书写规范

 

【规则-1】:所有代码统一使用小写字母书写。

例:

create or replace procedure p_check_package(
          i_package_code number,
          i_user_id number,
          o_flag out number
          ) is
     begin
         o_flag := 0;
     end p_check_package;

/

【规则-2】:确保变量和参数在类型和长度上与表数据列类型和长度相匹配。

说明:如果与表数据列宽度不匹配,则当较宽或较大的数据传进来时会产生运行异常。

【规则-3】:参数和变量的命名符合如下规范:

1、传入参数以“i_”为前缀;

2、传出参数以“o_”为前缀;

3、变量以“v_”为前缀

4、例如:

create or replace procedure P_GET_GLOBAL(i_operator_id in number,
                                                        i_session_id in number,
                                                        o_flag  out number) is
     v_cityID           varchar(2);
     v_region_level     number(1);

begin

….

end;

【规则-4】:程序块中的beginend独立成行。

【规则-5】:程序块采用缩进风格书写,保证代码清晰易读,风格一致,缩进格数统一。

例:

… …

begin
       update CFG_CDR_REFRESH set CHANGE_TIME=sysdate where CFG_TYPE=5;
       if  sql%rowcount = 0  then
              insert into CFG_CDR_REFRESH(CFG_TYPE,CHANGE_TIME,STATE)
              values(5,sysdate,0);
       end if;
    end trg_CFG_CITY_HOST_QRY_ALL;

【规则-6】:不允许把多个语句写在一行中,即一行只写一条语句。

【规则-7】:同一条语句占用多于一行时,每行的第一个关键字应当左对齐,

例:

select * into v_gsm_user from gsm_user
where msisdn = to_number(trim(i_phone_number))
and user_city = i_city_id;

【规则-8】:对于 Insert … values update 语句,一行写一个字段,字段后面紧跟注释(注释语句左对齐),values insert 左对齐,左括号和右括号与 insertvalues 左对齐

例:

insert into table_name

(

       user_id,    --用户 ID,主键

       user_name,   --用户名

       login_name    --登录名

)

values

(

       v_user_id,

       v_user_name,

       v_login_name

【规则-9】:相对独立的程序块之间需加空行。

例:

--判断套餐是否可增加成员并获得专网标志
    begin
      select use_date, decode(package_type, 1000, 1, 0)

  … …

exception

end;

 

--如果为手机号码

if i_number_type = 0 then

begin

… …

end;

【规则-10】:超过110列的语句要分行书写,长表达式应在低优先级操作符处换行,操作符或关键字放在新行之首。

例:

v_exchangeable_score := (v_score_phone_score + v_score_bounty_score + v_score_gift_score - v_score_alr_excg_score)

+ (v_pre_score_phone_score + v_pre_score_bounty_score - v_pre_score_alr_excg_score)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值