sql load的一点小总结
http://community.csdn.net/Expert/FAQ/FAQ_Index.asp?id=197926

解决方案 »

  1.   

    public void kanrijyohoInsert (DBAccessExt db ,
                                     String system_id ,
                                     String reception_id ,
                                     String master_gid ,
                                     String filename ,
                                     File file) throws Exception {
          ResultSet rs = null ;
          StringBuffer sql = new StringBuffer("") ;
            //新規登録
            sql.append(" INSERT INTO  EXT_DOCUMENT ");
            sql.append(" VALUES ( ");
            sql.append("'" + replaceSQLString(system_id) + "' , ");
            sql.append("'" + replaceSQLString(reception_id) + "' , ");
            sql.append("'" + replaceSQLString(master_gid) + "' , ");
            sql.append(" 2 , ");
            sql.append("'" + replaceSQLString(filename) + "' , ");
            sql.append(" EMPTY_BLOB() , ");
            sql.append("'text/xml' , ");
            sql.append("'" +  "' , ");
            sql.append(" EMPTY_BLOB() , ");
            sql.append("'" + "' , ");
            sql.append(" EMPTY_BLOB() , ");
            sql.append(" 0 , ");
            sql.append("SYSDATE, ");
            sql.append("SYSDATE, ");
            sql.append("'" + "' , ");
            sql.append("'" + "' , ");
            sql.append("'" + "' , ");
            sql.append("'" + "'  ");
            sql.append(" ) ");
            db.insert(sql.toString());        //検索
            sql = new StringBuffer("");
            sql.append(" SELECT * FROM EXT_DOCUMENT ") ;
            sql.append(" WHERE RECEPTION_ID = '" + replaceSQLString(reception_id) + "'");
            sql.append(" AND DOC_NUMBER =  '2' ");        rs = db.query(sql.toString());        if (rs.next()) {
              BLOB blob1 = (BLOB)rs.getBlob("INDEX_FILE");
              BufferedOutputStream out1 = new BufferedOutputStream(blob1.getBinaryOutputStream());
              BufferedInputStream in1 = new BufferedInputStream(new FileInputStream(file));
              int buffer1;
              while((buffer1 = in1.read()) != -1)
              {
                out1.write(buffer1);
              }
              out1.close();
              in1.close();
            }    }
    也就是说,先根据你本地硬盘上的文件做成一个File对象,然后在表里面的BLOB字段里面先插一个empty_blob()值,然后,将这条纪录选出来,用oracle.sql.BLOB这个类来将文件写入表上面这个函数大致就是这样,记得引入oracle.sql.BLOB这个包
      

  2.   

    用PB select出来之后,在ROWS里有个IMPORT就可以了