前几天测试中债时,自定义资产有一级类型和二级类型,一级类型下有很多分类,每个分类下又有很多二级分类,而要做的是每种类型都要建立一个自定义资产,并做一笔交易,然后测试是否出值,于是写了一个存储过程批量插入,记录一下.

create or replace procedure prd_tru_ydbb(account VARCHAR2) is--account是传入的参数,存储过程调用时传入
firstcount NUMBER;--一级分类类型数量
secondcount NUMBER;--二级分类类型数量
code sys_dict1.dictkey%type;--查询二级资产类型code(%type表示code变量的类型和sys_dict1表的dictkey字段相同)
uuid tru_info.TRUSTUUID%type;--自定义资产uuid
i number:=1;--计数器
trudealseqno tru_deal.SEQNO%type;
chbuuid CHB_ASSET_ATTRVALUE.PROPID%type;
BEGIN
SELECT COUNT(*)
INTO firstcount
FROM sys_dict1
WHERE dictcode='ASSETTYPE_CHBEX';--查询一级分类数量并赋值给变量firstcount
DECLARE CURSOR firsttype IS SELECT * FROM sys_dict1 WHERE dictcode='ASSETTYPE_CHBEX';--新建游标firsttype,存储所有一级类型
BEGIN
FOR FIRST IN firsttype LOOP--一级循环开始
if (first.dictkey='ASTTRUST')
then code:='ASTTRUSTEX';
elsif(first.dictkey='OTHTRUST')
then code:='OTHTRUSTEX';
elsif(first.dictkey='XDZC')
then code:='XDZCEX';
else
code:=first.dictkey;
end if;
DECLARE CURSOR secondtype IS SELECT * FROM sys_dict1 WHERE dictcode=code;--新建游标secondtype,存储所有二级类型
BEGIN
FOR second IN secondtype LOOP--二级循环开始
select f_guid() into uuid from dual;
--插入自定义资产基本信息
--Insert into TRU_INFO....(这里的values中就可以使用secondtype.字段名来插入不同的数据,为了区分资产编号,可以使用'ZDY0'||i来设置不同的资产编号,资产名称可以使用second.dictvalue  --中债要素插入
select f_guid() into chbuuid from dual;
--Insert into CHB_ASSET_ATTRVALUE...--自定义资产交易插入
select f_guid() into trudealseqno from dual;
--Insert into TRU_DEAL() valuse()...
i:=i+1;
END LOOP;
END;--二级循环结束
END LOOP;
commit;
END;--一级循环结束
END;

然后使用exec prd_tru_ydbb('account')执行存储过程,执行过后一下子就生成了所有需要的数据

oracle存储过程批量插入测试数据的更多相关文章

  1. Oracle 存储过程 批量插入测试数据

    有时候需要做DB的效率测试时,需要模拟大量数据.可以根据一条原始数据,通过执行存储过程拷贝出大量数据: CREATE OR REPLACE PROCEDURE proc_msw_strsql IS i ...

  2. Oracle 存储过程批量插入数据

    oracle 存储过程批量插入大量数据 declare numCount number; userName varchar2(512); email varchar2(512); markCommen ...

  3. PG数据库创建并执行存储过程批量插入数据

    记录一下PG数据库创建并执行存储过程批量插入数据的SQL: create or replace function addId() returns boolean AS $BODY$ declare i ...

  4. oracle+mybatis批量插入踩坑记

    最近在项目中需要使用oracle+mybatis批量插入数据,因为自增主键,遇到问题,现记录如下: 一.常用的两种sql写法报错 1.insert ... values ... <insert ...

  5. mybatis oracle mysql 批量插入时的坑爹问题--需谨记

    mybatis oracle mysql 批量插入一.oracle的批量插入方式insert into db(id, zgbh, shbzh) select '1', '2', '3' from du ...

  6. Mysql慢查询开启和查看 ,存储过程批量插入1000万条记录进行慢查询测试

    首先登陆进入Mysql命令行  执行sql      show variables like 'slow_query%';  结果为OFF 说明还未开启慢查询 执行sql     show varia ...

  7. oracle+ibatis 批量插入-支持序列自增

    首先请先看我前面一篇帖子了解oracle批量插入的sql:[oracle 批量插入-支持序列自增] 我用的ibatis2.0,sqlMap文件引入的标签如下: <!DOCTYPE sqlMap ...

  8. sqlserver存储过程批量插入数据

    在系统中经常会遇到向数据库中批量插入数据情况,存储过程中没有数组,只有通过字符串分割循环插入,下面是一个本人研究的一个例子: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 c ...

  9. mysql应用存储过程批量插入数据

    --批量插入数据的sql语句 delimiter $$ DROP PROCEDURE IF EXISTS `test.sp_insert_batch` $$ CREATE DEFINER =`root ...

随机推荐

  1. 【Nodejs】Browsersync同步浏览器测试

    说明文档:http://www.browsersync.cn/docs/ 安装命令: ①全局安装 npm install -g browser-sync ②局部/本地安装 npm install br ...

  2. 2017-2018 Exp3 MAL_免杀原理与实践 20155214

    目录 Exp3 MAL_免杀原理与实践 实验内容 对msf生成后门程序的检测 Veil-Evasion应用 Visual Studio2017 + shellcode生成后门 主要思路 知识点 最后的 ...

  3. 20155330 《网络攻防》Exp1 PC平台逆向破解(5)M

    20155330 <网络攻防>Exp1 PC平台逆向破解(5)M 实践目标 运行pwn1可执行文件中的getshell函数,学习如何注入运行任何Shellcode 本次实践的对象是一个名为 ...

  4. 20155331 丹增旦达 网络攻防 Exp2后门原理与实践

    20155331 丹增旦达<网络攻防>Exp2后门原理与实践 实验内容 (1)使用netcat获取主机操作Shell,cron启动 (2)使用socat获取主机操作Shell, 任务计划启 ...

  5. 20155339平措卓玛 Exp1 PC平台逆向破解(5)M

    20155339平措卓玛 Exp1 PC平台逆向破解(5)M 实践内容 手工修改可执行文件,改变程序执行流程,直接跳转到getShell函数. 利用foo函数的Bof漏洞,构造一个攻击输入字符串,覆盖 ...

  6. jQuery调用Asp.Net后台方法

    常用的ajax就不讲了,这里主要是说通过ajax调用asp.net后台的cs文件暴露的方法. 前台: <%@ Page Language="C#" AutoEventWire ...

  7. Luogu P4322 [JSOI2016]最佳团体

    JZdalao昨天上课讲的题目,话说JSOI的题目是真的不难,ZJOI的题目真的是虐啊! 题意很简单,抽象一下就是:有一棵树,一次只能选从根到某个节点上的链上的所有点,问从中取出k个节点所得到的总价值 ...

  8. libgdx学习记录1——图片显示Texture

    libgdx底层采用opengl渲染,对图片进行了优化处理,与android原生态的bitmap不太一样. 相比而言,效率要高一些,不过只支持png,jpg,bmp三种格式. 显示中,一般将图片放在a ...

  9. [APIO2013]机器人[搜索、斯坦纳树]

    题意 题目链接 分析 记 g(d,x,y) 表示从 (x,y) 出发,方向为 d 到达的点,这个可以通过记忆化搜索求出,注意如果转移成环(此时向这个方向走没有意义)要特判. 记 f(l,r,x,y) ...

  10. 【Direct2D1.1初探】Direct2D特效概览

    转载请注明出处:http://www.cnblogs.com/Ray1024 一.概述 Direct2D是一个基于Direct3D的2D图形API,可以利用硬件加速特性来提供高性能高质量的2D渲染.但 ...