在SQL*PLUS下你可以找一个数据量大的表,例如你需要100行
set linesize 1000
set head off
set feedback off
set newpage none
spool c:\req.txt
select 'INSERT INTO TAB_SRVG(SUBSCRBID,SVCID,SUBSVCID,SRVGSTAT,ORDERDATE) VALUES ( ?, ?, ?, ?, ?);' from table_name where rownum<100;
spool off

解决方案 »

  1.   

    package test;
    import java.sql.*;public class Batch {
      public Connection conn=null;
      public Batch() {
        //conn=得到connection对象
      }
      public void testAddbatch(){
        PreparedStatement st=null;
        try{
        st=conn.prepareStatement("INSERT INTO TAB_SRVG(SUBSCRBID,SVCID,SUBSVCID,SRVGSTAT,ORDERDATE) VALUES ( ?, ?, ?, ?, ?) ",ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);
      while(true){
       st.setString(1,"aaa");
       st.setString(2,"bbb");
       st.setString(3,"ccc");
       st.setString(4,"ddd");
       st.addBatch();
       }
       st.executeBatch();
        } catch(SQLException ads){
         ads.printStackTrace() ;
       }
     
       }
      public static void main(String[] args) {
        Batch batch1 = new Batch();
        batch1.testAddbatch();
      }
    }
      

  2.   

    要导入的value是否有规律可循?
    另外,能否把问题描述清楚,最好能举个例子。
      

  3.   

    我有一个表叫TEST其中两个字段ID和NAME现在要导入百万级的数据我记得有预处理语句先编译,然后填写值这样就在批量写INSERT时效率有大幅提高!不知道谁写过!我说的是PROC程序!谢谢