如何在EXCEL中实现对数据库的增删改查

如何在EXCEL中实现对数据库的增删改查,第1张

1

2

具体代码如下:

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354import java.io.Fileimport jxl.Workbookimport jxl.write.Labelimport jxl.write.WritableSheetimport jxl.write.WritableWorkbook/** * java代码编辑excel文件 * @author young * */public class EditExcel {public static void main(String args[]) {try {// 创建文件WritableWorkbook book = Workbook.createWorkbook(new File("test.xls")) // 生成名为“第一页”的工作表,参数0表示这是第一页WritableSheet sheet = book.createSheet(" 第一页 ", 0) // 在Label对象的构造子中指名单元格位置是第一列第一行(0,0)// 以及单元格内容为testLabel label = new Label(0, 0, " test ") // 将定义好的单元格添加到工作表中sheet.addCell(label) // 生成一个保存数字的单元格 必须使用Number的完整包路径,否则有语法歧义 单元格位置是第二列,第一行,值为555.12jxl.write.Number number = new jxl.write.Number(1, 0, 555.12) sheet.addCell(number)// 读取excel文件,第一个单元格的内容System.out.println("读取excel文件并输出:"+ book.getSheet(0).getCell(0, 0).getContents()) // 读取excel文件,第二个单元格的内容System.out.println("读取excel文件并输出:"+ book.getSheet(0).getCell(1, 0).getContents())//修改excel文件(update),添加一个工作表WritableSheet sheet1 = book.createSheet( " 第二页 " , 1 ) //添加数据Label label1 = new Label(0 , 0 , " 第二页的测试数据 ") sheet1.addCell(label1) //修改数据label1.setString("young")//删除数据,此时excel第二页没有数据sheet1.removeRow(0) // 写入数据并关闭文件book.write() book.close()} catch (Exception e) {System.out.println(e) }}}

一、首先处理好数据库连接字串

Excel2000-2003: string connStr = "Microsoft.Jet.Oledb.4.0Data Source='c:\test.xls'Extended Properties=\"Excel 8.0HDR=YesIMEX=1\""

Excel2007: string connStr = "Microsoft.Ace.OleDb.12.0Data Source='c:\test.xlsx'Extended Properties=\"Excel 12.0HDR=YesIMEX=1\""

其中:

HDR ( Header Row )设置:

若指定值为Yes,代表 Excel 档中的工作表第一行是栏位名称

若指定值为 No,代表 Excel 档中的工作表第一行就是资料了,没有栏位名称

IMEX ( IMport EXport mode )设置

当 IMEX=0 时为"汇出模式",这个模式开启的 Excel 档案只能用来做"写入"用途。

当 IMEX=1 时为"汇入模式",这个模式开启的 Excel 档案只能用来做"读取"用途。

当 IMEX=2 时为"连结模式",这个模式开启的 Excel 档案可同时支援"读取"与"写入"用途。

二、进行表格数据的查询、插入和更新:

(假设Excel文件text.xls中存在Excel表单tree,有2列分别为id,name)

1、查询

String sql = "select id, name from [tree$]"

String sql = "select id, name from `tree$`

2、插入

String sql = "insert into [tree$] (id,name) values(1,'testname')

3、更新

String sql = "update [tree$] set name='name2' where id=1

4、数据的删除

在OleDB的连接方式下,不可以使用delete from 语句来删除某表中的某一条记录。确切的说,在此模式下,将无法删除表中的记录。即使用update语句将所有的字段写成null,打开excel文件后依然会发现保留了该空行,而且在使用oleDB连接进行查询时,依然会查询到这条空数据。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6910442.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-30
下一篇 2023-03-30

发表评论

登录后才能评论

评论列表(0条)

保存