sql脚本书写规范实例分享

发布时间:2019-08-28编辑:脚本学堂
有关sql脚本书写规范的一个例子,有时写sql语句没有规范真是不行,如果你也是sql新手,建议看看本文的例子。

本节内容:
sql脚本书写规范

sql语句时用得上,一些增量脚本的书写规范。
比如:
 

pdm_table_表名_日期(扩充表字段长度).sql
--修改人
--扩充字段长度
--修改原因
declare
  nCount integer;
begin
  select count(*) into nCount from user_tab_cols where lower(table_name)='表名' and lower(column_name)='列名';
  if nCount=0 then
    execute immediate 'alter table 表名 add 列名 字段类型(长度)';
  end if;
  select count(*) into nCount from user_tab_cols where lower(table_name)='表名' and lower(column_name)='列名';
  if nCount=1 then
    execute immediate 'alter table 表名 modify 列名  字段类型(长度)';
  end if;
end;
/
pdm_table_表名_日期(增加表字段).sql
--修改人
--列名  中文注释 (C_ISCUSTCARD  是否会员)
--增加原因
declare
  icount  integer:=0;
  begin
    select count(1) into icount from user_tab_columns u where lower(u.TABLE_NAME) = '表名' and lower(u.COLUMN_NAME) = '列名';
    if icount = 0 then
      execute immediate 'alter table 表名 add 列名 字段类型(长度)';
    end if;
  end;
/
--增加表字段时填充默认值
declare
  icount  integer:=0;
  begin
    select count(1) into icount from user_tab_columns u where lower(u.TABLE_NAME) = '表名' and lower(u.COLUMN_NAME) = '列名';
    if icount = 0 then
      execute immediate 'alter table 表名 add 列名 字段类型(长度) default ''0''';
    end if;
  end;
/
pdm_table_存储过程名称_日期(删除或增加存储过程).sql
declare
  v_count pls_integer :=0;
begin
    select count(1) into iCount from USER_PROCEDURES t where t.OBJECT_NAME =upper('存储过程名称');
  if iCount = 1 then
    execute immediate 'DROP PROCEDURE 存储过程名称';
  end if;
end;
/
 

一些可以重复执行的批量脚本。

推荐阅读:sql语句大全