乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > 怎么把<em>excel</em>导入<em>sql</em> serv

怎么把<em>excel</em>导入<em>sql</em> serv

作者:乔山办公网日期:

返回目录:excel表格制作


public static List<String> excels(int rowStart,int cellStart,String filepath) throws Exception {
e69da5e887aa7a64336 //存放从Excel中读取到的内容
List<String> result = new ArrayList<String>();
//创建对Excel工作薄文件的引用
XSSFWorkbook workbook = new XSSFWorkbook(new FileInputStream(filepath));
//获取表格的所有sheet
int num=workbook.getNumberOfSheets();
for(int n=0;n<num;n++){
//创建对工作表的引用
XSSFSheet sheet = workbook.getSheetAt(n);
//Excel的行元素
XSSFRow row;
//遍历行
for(int i=rowStart-1;i<sheet.getPhysicalNumberOfRows();i++){
String bean="";
row = sheet.getRow(i);
//如果整行为空,结束此次循环执行下一次循环
if(row == null){
continue;
}
//遍历列
for(int j=cellStart-1;j<row.getPhysicalNumberOfCells();j++){
Cell content = row.getCell(j);
//如果但换个数据为null,结束此次循环执行下一次(可以为"")
if(content== null) {
continue;
}
content.setCellType(Cell.CELL_TYPE_STRING);
String value = content.getStringCellValue();
if(j==(row.getPhysicalNumberOfCells())){
bean+=value;
}
bean+=value+",";
}
result.add(bean);
}
}
return result;
}

最简单的
--select * from OpenRowSet('Microsoft.ACE.OLEDB.4.0', 'Excel 8.0;HDR=Yes;IMEX=1;Database=c:\dl.xls', 'select * from [Sheet1$]')
1、上传文件
2、解析上传的文件(建议使用POI)
3、整理解析出来的内容 生成sql语句
4、批量执行 最后commit就可以了。

用Apacher的POI读取Excel,再写入SQL Server就可e68a84e8a2ad7a686964616f334
这个是读取的例子 读取分析完后直接写入库中就行
private void readExcel(File file)
{
DecimalFormat df = new DecimalFormat("#");

try
{
HSSFWorkbook book=new HSSFWorkbook(new FileInputStream(file));
for(int numSheets=0;numSheets<book.getNumberOfSheets();numSheets++)
{
if(null!=book.getSheetAt(numSheets))
{
//System.out.println("Sheet存在");
HSSFSheet sheet=book.getSheetAt(numSheets);
for(int numRows=0;numRows<=sheet.getLastRowNum();numRows++)
{
if(null!=sheet.getRow(numRows))
{
//System.out.println("Row存在");
HSSFRow row=sheet.getRow(numRows);
for(short numCells=0;numCells<=row.getLastCellNum();numCells++)
{
if(null!=row.getCell(numCells))
{
HSSFCell cell=row.getCell(numCells);
int cellType=cell.getCellType();
switch(cellType)
{
case 0:
System.out.print(df.format(cell.getNumericCellValue()));
break;
case 1:
System.out.print(cell.getRichStringCellValue());
break;
default:break;
}

System.out.print("\t");
}
}
System.out.println();
}
}
}
}
}catch(Exception ex)
{
ex.printStackTrace();
}
}

相关阅读

关键词不能为空
极力推荐

ppt怎么做_excel表格制作_office365_word文档_365办公网