常用oracle可重复执行的脚本模板
为保证脚本的可重复执行以及丢失,涉及到数据库环境的移植等,就会使用可重复执行脚本,此处仅提供相关一些模板
说明下:该脚本需要在命令窗口执行,而不是在SQL窗口执行
创建序的脚本
- /**
- * 作者:zkongbai
- * 时间:11-30 09:22:10
- * 描述:创建序列【SEQ_ZZ_DOUBLE_RANDOM_TASK】
- * 脚本可重复执行
- */
- PROMPT SEQ_ZZ_DOUBLE_RANDOM_TASK 双随机事件脚本 创建序列
- DECLARE
- FLAG_NUM NUMBER;
- BEGIN
- SELECT COUNT(*) INTO FLAG_NUM
- FROM USER_SEQUENCES ASQ
- WHERE ASQ.SEQUENCE_NAME = UPPER('SEQ_ZZ_DOUBLE_RANDOM_TASK');
- IF FLAG_NUM = 0 THEN
- EXECUTE IMMEDIATE 'CREATE SEQUENCE SEQ_ZZ_DOUBLE_RANDOM_TASK MINVALUE 1 MAXVALUE 999999999 START WITH 1 INCREMENT BY 1 CACHE 20';
- END IF;
- END;
- /
- COMMIT;
创建表的脚本
- /**
- * 作者:zkongbai
- * 时间:11-21 09:22:10
- * 描述:创建表【双随机任务,序:SEQ_ZZ_DOUBLE_RANDOM_TASK】
- * 脚本可重复执行
- */
- PROMPT T_ZZ_DOUBLE_RANDOM_TASK 创建表
- DECLARE
- FLAG_NUM NUMBER;
- BEGIN
- SELECT COUNT(*) INTO FLAG_NUM
- FROM USER_TABLES ATS
- WHERE ATS.TABLE_NAME = UPPER('T_ZZ_DOUBLE_RANDOM_TASK');
- IF FLAG_NUM = 0 THEN
- EXECUTE IMMEDIATE 'CREATE TABLE T_ZZ_DOUBLE_RANDOM_TASK
- (
- ID NUMBER(8) not null,
- EVENT_ID NUMBER(8),
- JUDGE_COMMENT VARCHAR2(500),
- JUDGE_RESULE CHAR(1),
- JUDGE_PERSON NUMBER(8),
- CREATE_TIME DATE,
- STATUS CHAR(1),
- UPDATE_TIME DATE,
- CREATE_USER_ID NUMBER(8),
- CREATE_ORG_CODE VARCHAR2(32),
- CONSTRAINT PK_T_ZZ_DOUBLE_RANDOM_TASK PRIMARY KEY (ID)
- )';
- -- ADD COMMENTS TO THE TABLE
- EXECUTE IMMEDIATE 'COMMENT ON TABLE T_ZZ_DOUBLE_RANDOM_TASK IS ''双随机任务,序:SEQ_ZZ_DOUBLE_RANDOM_TASK''';
- -- ADD COMMENTS TO THE COLUMNS
- EXECUTE IMMEDIATE 'COMMENT ON COLUMN T_ZZ_DOUBLE_RANDOM_TASK.EVENT_ID IS ''事件ID''';
- EXECUTE IMMEDIATE 'COMMENT ON COLUMN T_ZZ_DOUBLE_RANDOM_TASK.JUDGE_COMMENT IS ''评价意见''';
- EXECUTE IMMEDIATE 'COMMENT ON COLUMN T_ZZ_DOUBLE_RANDOM_TASK.JUDGE_RESULE IS ''评价结果(1:合格,2:不合格)''';
- EXECUTE IMMEDIATE 'COMMENT ON COLUMN T_ZZ_DOUBLE_RANDOM_TASK.JUDGE_PERSON IS ''评价人''';
- EXECUTE IMMEDIATE 'COMMENT ON COLUMN T_ZZ_DOUBLE_RANDOM_TASK.STATUS IS ''状态.1:有效,0:无效''';
- EXECUTE IMMEDIATE 'COMMENT ON COLUMN T_ZZ_DOUBLE_RANDOM_TASK.CREATE_USER_ID IS ''创建人''';
- EXECUTE IMMEDIATE 'COMMENT ON COLUMN T_ZZ_DOUBLE_RANDOM_TASK.CREATE_ORG_CODE IS ''创建组织''';
- END IF;
- END;
- /
- COMMIT;
修改字段的脚本
- /**
- * 作者:zkongbai
- * 时间:2018/1/11
- * 描述:双随机任务添加字段 TASK_TYPE
- * 脚本可重复执行
- */
- PROMPT T_ZZ_DOUBLE_RANDOM_TASK 双随机任务添加字段 TASK_TYPE
- DECLARE
- FLAG_NUM NUMBER;
- BEGIN
- SELECT COUNT(*) INTO FLAG_NUM
- FROM USER_TABLES ATS
- WHERE ATS.TABLE_NAME = UPPER('T_ZZ_DOUBLE_RANDOM_TASK');
- IF FLAG_NUM > 0 THEN
- SELECT COUNT(*) INTO FLAG_NUM FROM USER_TAB_COLUMNS T
- WHERE T.TABLE_NAME = UPPER('T_ZZ_DOUBLE_RANDOM_TASK') AND T.COLUMN_NAME = UPPER('TASK_TYPE');
- IF FLAG_NUM=0 THEN
- EXECUTE IMMEDIATE 'ALTER TABLE T_ZZ_DOUBLE_RANDOM_TASK ADD TASK_TYPE CHAR(1)';
- -- ADD COMMENTS TO THE COLUMNS
- EXECUTE IMMEDIATE 'COMMENT ON COLUMN T_ZZ_DOUBLE_RANDOM_TASK.TASK_TYPE IS ''任务类型: 1或空:市级双随机任务,2:镇街级随机任务''';
- END IF;
- END IF;
- END;
- /
- COMMIT;
常用oracle可重复执行的脚本模板的更多相关文章
- oracle可重复执行脚本(添加字段)
--添加债券期限字段 declare cn integer; begin cn := 0; select count(*) into cn from user_tab_cols t where t.t ...
- 重复执行shell脚本。
while ((1)); do gclient runhooks; sleep 2; donewhile ((1)); do ifconfig; sleep 1; done
- 如何解决 shell 脚本重复执行的问题
在开发过程中,经常会使用shell脚本去完成定时备份的任务,普遍的做法是通过系统的定时任务定时执行备份脚本 设想这样一种场景,本次备份时间到了,自动执行备份脚本,如果备份比较耗时的话,会一直持续到下一 ...
- java之生成可重复执行的sql脚本
在实际项目开发过程中,sql脚本需要多次执行.而一般的DML和DDL语句一般只能执行一次,再次执行执行时就会报错(操作对应已存在/不存在),所以必须将sql脚本生成可重复执行的.本文共分为4部分:1. ...
- 安装ORACLE高可用RAC集群11g执行root脚本的输出信息
安装ORACLE高可用RAC集群11g执行root脚本的输出信息 作者:Eric 微信:loveoracle11g [root@node1 ~]# /u01/app/oraInventory/orai ...
- flock防止crontab脚本周期内未执行完重复执行(转)
如果某脚本要运行30分钟,可以在Crontab里把脚本间隔设为至少一小时来避免冲突.而比较糟的情况是可能该脚本在执行周期内没有完成,接着第二个脚本又开始运行了.如何确保只有一个脚本实例运行呢?一个好用 ...
- InstallShield在MySQL和Oracle中执行SQL脚本的方法InstallShield在MySQL和Oracle中执行SQL脚本的方法
简述 InstallShield已经内建了对MySQL和Oracle的支持.但是这个功能是通过ODBC实现的,它对SQL脚本的格式要求非常严格,因此已经通过官方客户端测试的脚本在IS中执行时往往就会报 ...
- Oracle命令行模式,批量执行SQL脚本
由于项目不同,使用的数据库也不一样,通常MySQL 比较方便简介,相对而言Oracle比较繁琐一点,尤其是堡垒机的连接的时候, 通过堡垒机登陆,数据库服务器,通过下面的脚本执行进入到命令行模式执行SQ ...
- mysql 重复执行创建表、新增字段脚本
#bigint 可重复执行创建表脚本 1 Create Table If Not Exists `库名`.`表名`( 2 字段列表 3 ) ENGINE=InnoDB DEFAULT CHARSET= ...
随机推荐
- 20165309 《网络对抗技术》实验一:PC平台逆向破解
20165309 <网络对抗技术>实验一:PC平台逆向破解 目录 实践目标 基础知识 实验原理.内容及步骤 问题与解决 实验收获 一.实践目标 本次实践的对象是一个名为pwn1的linux ...
- 【Oracle】【9】阅读oracle执行计划
正文: 工具:PLSQL 1,配置执行计划需要显示的项 工具→首选项→窗口类型→计划窗口→根据需要配置要显示在执行计划中的列 2,打开执行计划 在SQL窗口执行完一条select语句后按 F5 即可查 ...
- vue2 商城首页轮播图切换
home.vue <template> <div class="home"> <HomeBanner></HomeBanner> & ...
- 一个简单的对任意list分页的工具-----PageUtil
一.工具类代码 1 import java.util.List; 2 import java.util.stream.Collectors; 3 4 public class PageUtil< ...
- Java Design Pattern(Factory,Singleton,Prototype,Proxy)
一.Factory 设计模式: the most common pattern,create a new object ,eg. A a=new A();工厂模式的好处:工厂模式可以做到把创建对象单独 ...
- Hive中数据的导入与导出
最近在做一个小任务,将一个CDH平台中Hive的部分数据同步到另一个平台中.毕竟我也刚开始工作,在正式开始做之前,首先进行了一段时间的练习,下面的内容就是练习时写的文档中的内容.如果哪里有错误或者疏漏 ...
- flex布局设置width无效
子元素设置 : flex: 0 0 85px; 参数: flex属性是flex-grow, flex-shrink 和 flex-basis的简写,默认值为0 1 auto.后两个属性可选. 该属性有 ...
- 苹果笔记本安装windows正版操作系统
http://vip.dzzysm.cn/mac/ http://www.windows7en.com/Win7/20439.html windows 7之家的网友很多,其中不缺乏土豪网友购买苹果的M ...
- lr_场景设计之知识点-集合点、loadgenerator
1.controller原理 通过场景设计来模拟用户的真实操作并调用bugen中的脚本,再通过设置的压力机产生压力,在场景运行中实时监控用户的执行情况,tps,响应时间,吞吐量,服务器资源使用情况: ...
- What to do when you have small dataset - 拥有小型数据集时该怎么办
I'm trying to train a classifier with neural network, but I've got too small datasets. Each class ha ...