日期:2014-05-16  浏览次数:20760 次

关于Oracle11G如何处理一次性插入多条数据的问题,向各位求解?
目前用的是oracle11G

  现在要向某一个表同时插入(insert)多条数据,传统的做法都是传一个结果集,在去遍历结果集,一次一次的insert
  这样就需要多次连接数据库

  如何在只连接一次的情况下,将结果集中的数据一次性插入insert到表中呢?
  目前SqlServer2008出现了表值参数,将结果集作为表变量传入到存储过程中。(结果集Table必须与自定义的表结构一致)
   
  SqlServer解决了这个问题,Oracle不可以么? 求教!!!
 

------解决方案--------------------
可以在程序作成事务处理。
打开数据库。
然后循环插入。
一并提交,可以较少数据库连接打开。
------解决方案--------------------
同意,1、先CONN或CUR 再TX(可回滚) 接着Batch(重复)建议20-40做一次BATCH
2、临时表 CUR循环 Batch(重复)
------解决方案--------------------
用oracle.dataaccess.dll 这个dll支持批量插入 而且比。net自带的快