1.需求简介

最近开发人员需要进行一批数据进行生产上SQL语句耗时过长问题的验证与优化。所以在性能测试库中批量建造数据,由于交易本身业务逻辑过于复杂以及需要各种授权,最后决定采用插表的方式完成。

2.所用工具

DbVisualizer 10.0.14(已破解)(并不需要本地存在DB2客户端,DbVisualizer本身通过JDBC驱动,所以本地要有Java环境,最好是Java1.8)

3.详细过程

本身并不复杂,但是现在基本上已MySQL以及Oracle为主,所以还是踩了几个坑。

(1)由于不是在DB2客户端命令行运行脚本的方式运行,在DbVisualizer中运行需要对存储过程进行定义,否则会报 CODE -104错误。

(2)由于造数的多张表主键大部分为流水号或者日期等(例:20180905204132),所以在存储过程中定义循环 变量的时候,会报错,应该是支撑不了这么大长度的变量定义。

在网上有解决办法,但是是对本地DB2环境变量进行配置,故本次造数过程采用 变量拼接的方式进行数据库主键的插入。

存储过程:(由于涉及数据敏感,故对INSERT语句进行了修改,请按照本身需求更改)

--/       -----此处对存储过程进行声明
begin atomic
declare i integer;
set i=14000021;
while i<=14000080 do
INSERT
INTO
OMS_BANK_TRANFLOW_INFO
(
OBI_TRANFLOWNO,
OBI_BIE,
OBI_BME,
OBI_IE,
)
VALUES
(
'私房菜',
'CNY',
'0.01',
''||trim(char(i)),
'',
);
set i=i+1;
end while;
END
/ -----此处对存储过程进行声明,与开头对应

说明:'201809'||trim(char(i))  是对主键的拼接,上述代码主键插入的值为20180914000021~20180914000080,共计60条数据。

通过DbVisualizer 工具运行DB2存储过程实现INSERT语句主键自增造数的更多相关文章

  1. mybatis使用注解往postgresql数据库表insert数据[主键自增]的写法

    建表SQL: DROP TABLE IF EXISTS person; CREATE TABLE person( person_id serial PRIMARY KEY NOT NULL, pers ...

  2. Mybatis insert 获取主键自增id

    Mybatis insert 返回自增主键 mysql 准备一张带有自增主键的表users 字段:id,name,phone sql <!--插入记录并获取刚插入记录的主键--> < ...

  3. MyBatis insert返回主键(sqlserver2008)

    mybatis insert返回主键(sqlserver2008)   MyBatisXML配置,下面两种方式都行 方式1: <insert id="insert" para ...

  4. postgresql + mybatis insert主键自增方法

    postgresql + mybatis插入记录时设置自增主键方法: 一.数据库设置主键自增 1.数据库中id字段选择serial4类型后,会在默认值中生成 nextval('app_id_seq': ...

  5. Mybatis批量insert 返回主键值和foreach标签详解

    Mybatis批量insert 返回主键 Mybatis从3.3.1版本开始,支持批量插入后返回主键ID.首先对于支持自增主键的数据库使用useGenerateKeys和keyProperty,对于不 ...

  6. Mybatis里Mapper映射sql文件里insert的主键返回selectKey使用

    有时候新增一条数据,知道新增成功即可,但是有时候,需要这条新增数据的主键,以便逻辑使用,再将其查询出来明显不符合要求,效率也变低了. 这时候,通过一些设置,mybatis可以将insert的数据的主键 ...

  7. 【mybatis】mybatis中insert 主键自增和不自增的插入情况【mysql】

    主键不自增:返回值是插入的条数 <insert id="add" parameterType="EStudent"> insert into TSt ...

  8. mybatis添加数据时返回主键 insert 返回主键值

    insert 返回主键值 useGeneratedKeys=“true” parameterType=“USer” keyProperty=“id”, <insert id="inse ...

  9. SQL 创建存储过程,让主键自增

    1.  首先创建存储过程: 2.  然后分别创建序列,生成基金公司编号.基金代码.活期账号.理财账号.基金账户.合同号.要求如下: 基金公司编号,字母K+5位数字. 基金代码,字母V+6位数字. 活期 ...

随机推荐

  1. python之有用的3个内置函数(filter/map/reduce)

    这三个内置函数还是非常有用的,在工作中用的还不少,顺手,下面一一进行介绍 1.filter 语法:filter(function,iterable) 解释:把迭代器通过function函数进行过滤出想 ...

  2. Mongodb 无法启动 windows Mongodb 无法启动 couldn't connect to server

      发现在mongodb.log里出现  2017-07-07T17:01:55.339+0800 I CONTROL  [main] Error connecting to the Service ...

  3. 写好Java代码的30条经验总结

    成为一个优秀的Java程序员,有着良好的代码编写习惯是必不可少的.下面就让我们来看看代码编写的30条建议吧. (1) 类名首字母应该大写.字段.方法以及对象(句柄)的首字母应小写.对于所有标识符,其中 ...

  4. odoo开发笔记 -- 后台日志输出及分析

    odoo开发笔记 -- 后台日志输出及分析 附:日志分析软件

  5. Difference Between Session.run and Tensor.eval

    [Question]: TensorFlow has two ways to evaluate part of graph: Session.run on a list of variables an ...

  6. Zabbix4.2.0使用Python连接企业微信报警

    目录 1. 配置企业微信 2. 脚本配置 2.1 安装python依赖的库 2.2 编写脚本 2. 搭建FTP 3. 配置Zabbix监控FTP 3.1 添加FTP模板 3.2 添加报警媒介 3.3 ...

  7. GTest的安装与使用

    安装GTest 1.安装源代码 下载gtest,release-1.8.0 git clone https://github.com/google/googletest gtest编译 cd goog ...

  8. 二、Windows下TortoiseGit的安装与配置

    TortoiseGit 简称 tgit, 中文名海龟Git. 海龟Git只支持神器 Windows 系统, 有一个前辈海龟SVN, TortoiseSVN和TortoiseGit都是非常优秀的开源的版 ...

  9. HAPRoxy(一):HAProxy基本配置、调度算法与tcp、http、heath模式配置示例

    一.HAProxy安装 1.HAProxy简单介绍 HAProxy虽然名字前有HA,但它并不是一款高可用软件,而是一款用于实现负载均衡的软件,可实现四层与七层的负载均衡. 2.yum安装HAProxy ...

  10. IdentityServer4 中文文档 -6- (简介)示例服务器和测试

    IdentityServer4 中文文档 -6- (简介)示例服务器和测试 原文:http://docs.identityserver.io/en/release/intro/test.html 目 ...