请教各位大牛,怎么样写oracle的存储过程来读取.xls文件内的数据到数据库中?
我写了一个java源,但是要用到jxl.jar,不知道怎么样使oracle调用到jxl代码如下:
create or replace and compile java source named readexcel as
import jxl.Sheet;
import jxl.Cell;
import java.io.InputStream;
import java.util.Vector;
import java.io.FileInputStream;
import jxl.Workbook;public class ReadExcel
{
public static void read(String directory1)
{
String elementrq=null,elementecbm=null,elementch=null,elementkssj=null,ele
mentjssj=null;
String elementcyds=null,elementcyd1=null,elementcyd2=null,elementcyd3=null
,elementcysd=null,elementgh=null;
jxl.Workbook rwb = null;
try{
//构建Workbook对象, 只读Workbook对象
//直接从本地文件创建Workbook
//从输入流创建Workbook
InputStream is = new FileInputStream(directory1);
rwb = Workbook.getWorkbook(is); //获取第一张Sheet表
Sheet rs = rwb.getSheet(0);
//获取Sheet表中所包含的总列数
int rsColumns = rs.getColumns();
//获取Sheet表中所包含的总行数
int rsRows = rs.getRows();
//获取指定单元格的对象引用
for(int i=2;i<rsRows;i++){
for(int j=0;j<rsColumns;j++){
Cell cell = rs.getCell(j,i);
switch(j) {
case 0:elementrq=cell.getContents(); break;
case 1:elementecbm=cell.getContents(); break;
case 2:elementch=cell.getContents(); break;
case 3:elementkssj=cell.getContents(); break;
case 4:elementjssj=cell.getContents(); break;
case 5:elementcyds=cell.getContents(); break;
case 6:elementcyd1=cell.getContents(); break;
case 7:elementcyd2=cell.getContents(); break;
case 8:elementcyd3=cell.getContents(); break;
case 9:elementcysd=cell.getContents(); break;
case 10:elementgh=cell.getContents(); break;
}//end switch
}//end for(insides)
#sql{INSERT INTO HC_JXCY(rq,ecbm,ch,kssj,jssj,cyds,cyd1,cyd2,cyd3,cysd,gh
)
VALUES(:elementrq,:elementecbm,:elementch,:elementkssj,:elementjssj,
:elementcyds,:elementcyd1,:elementcyd2,:elementcyd3,:elementcysd,:elementgh)};
#sql{commit};
}//end for(outsides)
}catch(Exception e){;}
finally{
//操作完成时,关闭对象,释放占用的内存空间
rwb.close();
}
}
}出错信息如下:
JAVA SOURCE SYSTEM.READEXCEL 编译错误错误: Class jxl.Sheet not found in import.
行: 2
文本: import jxl.Sheet;错误: Class jxl.Cell not found in import.
行: 3
文本: import jxl.Cell;错误: Class jxl.Workbook not found in import.
行: 7
文本: import jxl.Workbook;请假各位怎么解决?时间比较急,不胜感谢!
我新手,不知道这里给分得分怎么弄,麻烦各位帮忙一下,以后知道怎么弄分了一定给!
我写了一个java源,但是要用到jxl.jar,不知道怎么样使oracle调用到jxl代码如下:
create or replace and compile java source named readexcel as
import jxl.Sheet;
import jxl.Cell;
import java.io.InputStream;
import java.util.Vector;
import java.io.FileInputStream;
import jxl.Workbook;public class ReadExcel
{
public static void read(String directory1)
{
String elementrq=null,elementecbm=null,elementch=null,elementkssj=null,ele
mentjssj=null;
String elementcyds=null,elementcyd1=null,elementcyd2=null,elementcyd3=null
,elementcysd=null,elementgh=null;
jxl.Workbook rwb = null;
try{
//构建Workbook对象, 只读Workbook对象
//直接从本地文件创建Workbook
//从输入流创建Workbook
InputStream is = new FileInputStream(directory1);
rwb = Workbook.getWorkbook(is); //获取第一张Sheet表
Sheet rs = rwb.getSheet(0);
//获取Sheet表中所包含的总列数
int rsColumns = rs.getColumns();
//获取Sheet表中所包含的总行数
int rsRows = rs.getRows();
//获取指定单元格的对象引用
for(int i=2;i<rsRows;i++){
for(int j=0;j<rsColumns;j++){
Cell cell = rs.getCell(j,i);
switch(j) {
case 0:elementrq=cell.getContents(); break;
case 1:elementecbm=cell.getContents(); break;
case 2:elementch=cell.getContents(); break;
case 3:elementkssj=cell.getContents(); break;
case 4:elementjssj=cell.getContents(); break;
case 5:elementcyds=cell.getContents(); break;
case 6:elementcyd1=cell.getContents(); break;
case 7:elementcyd2=cell.getContents(); break;
case 8:elementcyd3=cell.getContents(); break;
case 9:elementcysd=cell.getContents(); break;
case 10:elementgh=cell.getContents(); break;
}//end switch
}//end for(insides)
#sql{INSERT INTO HC_JXCY(rq,ecbm,ch,kssj,jssj,cyds,cyd1,cyd2,cyd3,cysd,gh
)
VALUES(:elementrq,:elementecbm,:elementch,:elementkssj,:elementjssj,
:elementcyds,:elementcyd1,:elementcyd2,:elementcyd3,:elementcysd,:elementgh)};
#sql{commit};
}//end for(outsides)
}catch(Exception e){;}
finally{
//操作完成时,关闭对象,释放占用的内存空间
rwb.close();
}
}
}出错信息如下:
JAVA SOURCE SYSTEM.READEXCEL 编译错误错误: Class jxl.Sheet not found in import.
行: 2
文本: import jxl.Sheet;错误: Class jxl.Cell not found in import.
行: 3
文本: import jxl.Cell;错误: Class jxl.Workbook not found in import.
行: 7
文本: import jxl.Workbook;请假各位怎么解决?时间比较急,不胜感谢!
我新手,不知道这里给分得分怎么弄,麻烦各位帮忙一下,以后知道怎么弄分了一定给!
解决方案 »
- JPA 2.0: 热加载lazy loading的object
- 请教一个APP与低版本打交道的方案
- 非常着急,大侠帮帮忙呀
- 一个简单的查询问题
- ORA-00942:table or view does not exist,很奇怪的一个问题,大家过来帮帮忙吧
- 思雨是新手,请各位大侠指点一个问题,不要笑我哦。
- Oracle 的安装为什么这么难?为什么〉。?
- 如何选出最靠近当前日期(多个条件之一)的一条记录?
- 如何将execl表中数据导入到oracle表中?
- show parameter instance;
- toad导出时报错,非常怪,我是oracle 10g
- 大家有没有遇到从ORACLE取Number型的数据,出来用DataReader读,变成STRING类型了
loadjava -u test/test@test -resolve f:\jxl.jar
Compilation errors for JAVA SOURCE VMS.READEXCELError: READEXCEL:1: cannot access jxl.Sheet
Line: 1
Text: create or replace and compile java source named readExcel asError: bad class file: null
Line: 1
Text: create or replace and compile java source named readExcel asError: class file has wrong version 50.0, should be 48.0
Line: 1
Text: create or replace and compile java source named readExcel asError: Please remove or make sure it appears in the correct subdirectory of the classpath.
Line: 1
Text: create or replace and compile java source named readExcel asError: import jxl.Sheet;
Line: 1
Text: create or replace and compile java source named readExcel asError: ^
Line: 1
Text: create or replace and compile java source named readExcel asError: 1 error
Line: 1
Text: create or replace and compile java source named readExcel as