当前位置:首页 > 开发 > 数据库 > 正文

sql脚本书写规范

发表于: 2014-08-20   作者:beee   来源:转载   浏览:
摘要: 一些增量脚本的书写规范,mark一下,这些都是经常用到的 比如: pdm_table_表名_日期(扩充表字段长度).sql --修改人--扩充字段长度--修改原因 declare  nCount integer;begin  select count(*) into nCount from user_tab_cols where lower(table_name)='表

一些增量脚本的书写规范,mark一下,这些都是经常用到的

比如:

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脚本书写规范

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号