在 DB2 表中插入 100 万条记录的最快方法是啥?
Posted
技术标签:
【中文标题】在 DB2 表中插入 100 万条记录的最快方法是啥?【英文标题】:What is the fastest way to insert 1 mln+ records in DB2 table?在 DB2 表中插入 100 万条记录的最快方法是什么? 【发布时间】:2014-01-22 13:57:44 【问题描述】:在 C# 中,我有 100 万多条记录需要插入到 DB2 表中。 在 DB2 表中插入 100 万条记录的最快方法是什么?
我已经检查了几种方法,最快的是根据以下请求检查 1000 行: INSERT INTO tbl (id, rel) 值 (1, 2), (2,3),...
还有其他想法吗?
【问题讨论】:
这里有问题吗?您要在哪个平台上执行此操作?您是想通过一种编程语言还是仅仅通过 DB2 工具来做到这一点? 如果您真的想要最快,请使用 LOAD 实用程序。如果您在远程工作,则需要做更多的工作,但仍然可行。 从 C# 和 DB2 8.2 插入,其中 LOAD 无法通过客户端访问 【参考方案1】:尝试使用类似的方法记录 1000 条记录:
INSERT INTO table
SELECT
cast (RAND()*50000 as numeric(6)) AS id,
cast (RAND() as varchar(30)) AS rel,
FROM qsys2/COLUMNS
fetch first 1000 rows only
更改table
以及与您的表格相关的字段性质/长度。
我假设了
cast (RAND()*50000 as numeric(6)) AS id
id
是数字 6 字节
最后一行限制插入 1000 行
【讨论】:
以上是关于在 DB2 表中插入 100 万条记录的最快方法是啥?的主要内容,如果未能解决你的问题,请参考以下文章
将数百批 500k - 300 万条记录插入 PostgreSQL 数据库的最快方法
在 C# 中将 100 000 条记录插入 MDB 文件的最快方法是啥