hongblue 发表于 2018-9-14 11:27:15

将Excel数据导入Oracle

  转载自:http://blog.csdn.net/quanleilei123/article/details/5770943
  工具选择
  数据库 ORACLE11G
  编程语言 JAVA
  首先是使用JAVA语言编写一个解析EXCEL文件的小代码,这里需要一个工具JXL.JAR,这是个JAR包,有了它,我们就可以轻松的把EXCEL文件解析
  如果要对EXCEL文件进行操作,则需要对EXCEL文件有所了解。
  1、我们打开EXCEL文件看到一个一个小格子是单元格,在JXL里面被定义为CELL;
  2、软件线面,状态栏上面有几个标签,可以在不同标签里进行切换,每个标签对应一个SHEET;
  3、每一个可编辑的EXCEL文件在JXL里面定义为WORKBOOK;
  我们的TEXT.XLS里面有两列,第一列为姓名,第二列为性别,共20行。

  public>  public static Connection con=null;
  public static void build(Connection conn) throws BiffException, IOException{
  String filepath="d://test.xls";
  File excelfile = new File(filepath);
  Workbook book = null;
  CallableStatement st = null;
  int rownum;
  String name = null;
  String sex = null;
  try{
  book = Workbook.getWorkbook(excelfile);
  Sheet sheet = book.getSheet(0);//工作簿是从0开始的
  for(rownum=1;rownum  String url = "jdbc:oracle:thin:@192.168.212.132:1521:TESTDB";
  Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
  con = DriverManager.getConnection(url, "user", "password");
  return con;
  }

  public static void main(String [] arg) throws BiffException, IOException, InstantiationException, IllegalAccessException,>  Connection co = loadEXCEL.getConnection();
  co.setAutoCommit(true);
  loadEXCEL.build(co);
  co.close();
  System.out.println("JUST OK!!!");
  }
  }
  如上,红色部分是给像我一样的大老粗提个醒,记得要释放资源。
  ST.CLOSE是关闭游标,ORACLE默认游标值为300,如果不关闭,而且数据量超过300的时候,就会报错。
  大家可能看到,我的ROWNUM是从1开始,不是必须的,因为我的EXCEL文件第一行是标题,我这里是跳过标题。
  别的我不说了,里面用到得FILE和SQL的包大家自己加上去吧。
  代码可以直接拷贝使用,我试过了,很快。10000条数据就10秒钟,如果只是一次性的导入完全可以了。

页: [1]
查看完整版本: 将Excel数据导入Oracle