结合OleDb编程操作Excel文件
2011-05-20 09:46
239 查看
想必许多同志们会用组件Microsoft.Office.Interop.Excel来操作Excel文档,但是这种方法不够简便,这不如利用C#配合OleDb编辑Excel文档的方式容易,这种法使得Excel表格变得像数据表那样容易地被用于查寻,更新和删除记录.下面就介绍这种方法的常用编码方式:
protected void DoOleSql(string sql, string database) { OleDbConnection conn = new OleDbConnection(); conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("\\") + database + "; Extended Properties='Excel 8.0;HDR=no;IMEX=0'"; try {//打开连接 conn.Open(); } catch (Exception e) { Response.Write(e.ToString()); } OleDbCommand olecommand = new OleDbCommand(sql, conn); try {//执行语句 olecommand.ExecuteNonQuery(); } catch (Exception eee) { Response.Write(eee.ToString()); conn.Close(); } finally { conn.Close();//关闭数据库 } conn.Close(); }
注:1)使用 Excel 工作簿时,默认情况下,区域中的第一行是标题行(或字段名称)。如果第一个区域不包含标题,您可以在连接字符串的扩展属性中指定 HDR=NO。如果您在连接字符串中指定 HDR=NO,Jet OLE DB 提供程序将自动为您命名字段(F1 表示第一个字段,F2 表示第二个字段,依此类推);2)IMEX=1将所有读入数据看作字符,其他值(0、2)请查阅相关帮助文档;3)如果出现“找不到可安装的isam”错误,一般是连接字符串错误 3、从excel文件读取数据 string sql = "select * from [sheet1$]"; DoOleSql(sql,"test.xls"); 4、更新excel文件中的数据 string sql = "update [sheet1$] set FieldName1='333' where FieldName2='b3'"; DoOleSql(sql,"test.xls"); 5、向excel文件插入数据 string sql = "insert into [sheet1$](FieldName1,FieldName2,…) values('a',’b’,…)"; DoOleSql(sql,"test.xls"); 6、删除excel文件中的数据:不提倡使用这种方法 7、对于非标准结构的excel表格,可以指定excel中sheet的范围 1)读取数据:string sql = "select * from [sheet1$A3:F20]"; 2)更新数据:string sql = "update [sheet1$A9:F15] set FieldName='333' where AnotherFieldName='b3'"; 3)插入数据:string sql = "insert into [sheet1$A9:F15](FieldName1,FieldName2,…) values('a',’b’,…)"; 4)删除数据:不提倡 注:1) 代码根据需要可以自行修改;2)如果出现“操作必须使用一个可更新的查询”错误,可能sql语句中对excel文件中的“字段”引用有错误,或对 excel文件不具有“修改”权限;3)如果出现“不能扩充选定范围”错误,可能是对excel文件引用的“范围”有错误。
相关文章推荐
- C#以OleDb的方式操作Excel文件(二)
- VC操作Excel文件编程相关内容
- VC操作Excel文件编程相关内容总结
- 阿翔编程学-操作Excel文件的类
- C#以OleDb的方式操作Excel文件(三)
- Asp.net/c#+OleDb操作excel文件
- VC操作Excel文件编程相关内容总结
- VC操作Excel文件编程相关内容总结
- C#使用oledb操作excel文件的方法
- C#以OleDb的方式操作Excel文件
- C#利用OleDb操作Excel文件
- C#使用oledb操作excel文件的方法
- c#操作excel方式二:采用OleDB操作Excel文件
- c#操作excel方式二:采用OleDB操作Excel文件
- Asp.net/c# OleDb操作excel文件
- VC操作Excel文件编程相关内容总结
- VC操作Excel文件编程相关内容总结
- VC操作Excel文件编程相关内容总结
- VC操作Excel文件编程相关内容总结
- Asp.net/c#+OleDb操作excel文件