互联网服务数据库存储过程

关于JDBC中的LOAD的问题,悬赏是我的全部金币了~

1.如何在JDBC中实现load?我试过使用load client from c:file.del of del insert into tabname进行对远程的数据库进行load的,但是在conn.createStatement().execute("load client from c:file.del of del insert into tabname");中执行报错,但是在本地的DB2客户端执行的...显示全部
1.如何在JDBC中实现load?
我试过使用load client from c:file.del of del insert into tabname进行对远程的数据库进行load的,但是在conn.createStatement().execute("load client from c:file.del of del insert into tabname");中执行报错,但是在本地的DB2客户端执行的时候正常
后来我又用了conn.prepareCall("{load client from c:file.del of del insert into tabname}").execute();进行执行还是报我语法错误.
请问怎么才能实现JDBC的LOAD?
注意:
在我本地(windows)的clp执行成功可能原因是我本地安装了DB2客户端,现在需要明确的是生产机的应用服务器(AIX)没有DB2的客户端!所以Runtime.getRuntime().exec("db2 load client from c:file.del of del insert into tabname");也是不行的.


2.如果以上的方法都不行,可以使用JDBC对SYSPROC.DB2LOAD()或者SYSPROC.ADMIN_CMD这两个系统级存储过程进行调用.我现在疑惑的是,这两个存储过程是否支持load client from... 的客户端导入?尤其是那个本地路径!

如果能帮忙回答解决的就太感谢你了!!!
或者如果你有其他的好办法也可以给我提点建议,因为目前需要进行千万级的数据入库.之前是使用Insert的普通语句的,而现在改成load.但是现在遇难题 希望能帮忙看看.再次谢谢你们了!

我给出的分数是我全部的身家了~~~~~~~~~,我尽力了,希望你们也一样~~!收起
参与18

查看其它 16 个回答weiruan85的回答

weiruan85weiruan85数据库管理员ibm
http://publib.boulder.ibm.com/in ... c/doc/t0020807.html

不行的 ,SYSPROC.ADMIN_CMD just support "load from" .

1.如果是经常要把几千万的数据导入到数据库,建议先把文件上传到server ,然后后台处理 或者 直接读文件,insert 可以使用jdbc batch的方式,具体多少行提交一次,要自己测试)

2.如果只是偶尔,那就手动吧


2.如果不是很频繁,那就写个shell 脚本,
政府机关 · 2011-04-27
浏览415

回答者

weiruan85
数据库管理员ibm

weiruan85 最近回答过的问题

回答状态

  • 发布时间:2011-04-27
  • 关注会员:1 人
  • 回答浏览:415
  • X社区推广