zoukankan      html  css  js  c++  java
  • oracle存储过程批量插入测试数据

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

    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')执行存储过程,执行过后一下子就生成了所有需要的数据

  • 相关阅读:
    ES monitoring
    my stackoverflow
    ES 监控
    Natural Language Processing 课程,文章,论文
    搜索引擎名著
    https://medium.com/netflix-techblog/linux-performance-analysis-in-60-000-milliseconds-accc10403c55
    MySQL 性能跟踪方法
    JAVA CAS原理深度分析 volatile,偏向锁,轻量级锁
    spark-architecture-shuffle
    Linux performance commands and tool
  • 原文地址:https://www.cnblogs.com/NieXiaoHui/p/5917340.html
Copyright © 2011-2022 走看看