从Oracle中得到的一个结果集,应该有过万的记录,想保存到一个Mysql表中。如果用while{insert}这个方法会很耗时,有什么好办法吗?

解决方案 »

  1.   

    从Oracle里Select到缓存,再从缓存Insert到Mysql
      

  2.   

    这里的缓存是指一个ResultSet吗? 如果是这样,遍历一遍ResultSet来insert到Mysql的表里很耗时,这就是我提出的问题,有没有什么一下子批量从ResultSet插入到Mysql的方法?在线等~ 
      

  3.   

    1楼请详述一下怎么"从Oracle里Select到缓存,再从缓存Insert到Mysql",刚百度了也没有什么帮助的谢谢!
      

  4.   

    其实就是要完成下面的工作sql_oracle = "SELECT customer_number FROM ra_customers WHERE status = 'A'";
    rs_oracle= stm_oracle.executeQuery(sql_oracle);while (rs_oracle.next())
    {
      sql_mysql = "INSERT "+temp_table_credit_control+" (customer_num) values ('"+rs_oracle.getString("customer_number")+"')"; 
      lb = stm_mysql.executeUpdate(sql_mysql);                    //插入记录
    }这个stm_mysql.executeUpdate(sql_mysql)很耗时!!!有高效点的方法吗?
      

  5.   

    executeUpdate()这个确实很耗时
      

  6.   

    wujj1991:可以帮我大概写个吗?我们可不可以考虑,写个存储过程 
      

  7.   

    vnetoolxw_87:这个数据的导转不是有一个固定的数据去导,而是随时由客户端来提请执行的。 我太菜了,不知道我有没有说清楚