前几天看到遇到需要把EXCEL中的数据导入ORACLE的问题,解决了。后来看到网上很多人都问这个问题,就想把自己做的东西贴上来,算是方便后来人吧。
工具选择
数据库 ORACLE11G
编程语言 JAVA
首先是使用JAVA语言编写一个解析EXCEL文件的小代码,这里需要一个工具JXL.JAR,这是个JAR包,有了它,我们就可以轻松的把EXCEL文件解析
如果要对EXCEL文件进行操作,则需要对EXCEL文件有所了解。
1、我们打开EXCEL文件看到一个一个小格子是单元格,在JXL里面被定义为CELL;
2、软件线面,状态栏上面有几个标签,可以在不同标签里进行切换,每个标签对应一个SHEET;
3、每一个可编辑的EXCEL文件在JXL里面定义为WORKBOOK;
我们的TEXT.XLS里面有两列,第一列为姓名,第二列为性别,共20行。
public class loadEXCEL{
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<sheet.getRows();rownum++){
name = sheet.getCell(0,rownum).getContents().trim();//参数顺序为(列,行)
sex = sheet.getCell(1,rownum).getContents().trim();//getContents().trim()是获取单元格内的值并去空格
try{
st = conn.prepareCall("insert into test_table values (?,?)");//这里是执行插入操作,可以换成别的如UPDATE
st.setString(1, name);
st.setString(2, sex);
st.execute();
st.close();
System.out.println("第"+rownum+"条记录!");
}catch (SQLException e) {
e.printStackTrace();
}
}
}finally{
book.close();
}
}
public
static Connection getConnection() throws InstantiationException,
IllegalAccessException, ClassNotFoundException, SQLException{//配置JDBC连接
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,
ClassNotFoundException, SQLException{
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的包大家自己加上去吧。
代码可以直接拷贝使用,我试过了,很快。8000条数据就几分钟,如果只是一次性的导入完全可以了。
分享到:
相关推荐
如何用PL/SQL将EXCEL数据导入到ORACLE数据库中,截图教大家。
excel导入数据到数据库的步骤过程,希望对大家有用。
JAVA实现Excel表数据导入ORACLE数据库.txtJAVA实现Excel表数据导入ORACLE数据库.txtJAVA实现Excel表数据导入ORACLE数据库.txt
5种从Excel数据导入Oracle方法
java语言,excel数据导入oracle数据库里!
将Excel数据导入Oracle数据库(C#)完整代码。 环境:vs2008 oracle10g
使用toad将excel数据导入oracle
JAVA实现Excel表数据导入ORACLE数据库JAVA实现Excel表数据导入ORACLE数据库JAVA实现Excel表数据导入ORACLE数据库JAVA实现Excel表数据导入ORACLE数据库
oracle-excel导入导出 博文链接:https://fackyou200.iteye.com/blog/796633
excel大量数据如何导入到oracle数据库中
将excel的数据导入到Oracle数据库中,根据不同的数据库,可以更改BaseDao里面的URL和lib里面的数据库驱动jar包。本人只用了Struts2,若想SSH集成,自己弄去,没多大区别的
摘要:在程序编制过程和数据汇总交换过程中,经常会碰到需要将其他人员在office办公环境下编制的文件数据内容导入oracle中的情况。目前程序开发者经常使用的方法有如下几种:1,使用oracle提供的导入工具sql*loader...
该程序根据Excel文件的第一个Sheet页内容,生成数据库表,并将数据导入生成的表中; 操作说明:1>:输入数据库相关信息,登陆数据库; 2>:选择Excel文档,输入设置信息,创建数据库表结构; 3>:点击导入数据按钮...
非常方便的将EXCL数据导入到ORACLE中,操作截图非常详细。
excel 导入oracle 的小工具,非常好用。方便系统初始化等
excel导入数据到oracle的小工具。
最近项目需要把excel中的数据导入到excel,在网上查阅了一些资料,表示写的很复杂,不容易看懂,自己花了一天时间,实现出来,把步骤都写出来了分享一下。
我的学习笔记,一点点心得,希望对大家有用