`
风火山林
  • 浏览: 147218 次
  • 性别: Icon_minigender_1
  • 来自: 汕尾
最近访客 更多访客>>
社区版块
存档分类
最新评论

oledb操作excel

阅读更多
1、环境配置:加入using System.OleDb

2、编写连接与操作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=NOJet OLE DB 提供程序将自动为您命名字段(F1 表示第一个字段,F2 表示第二个字段,依此类推);2IMEX=1将所有读入数据看作字符,其他值(02)请查阅相关帮助文档;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表格,可以指定excelsheet的范围

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实例代码

    C#通过OLE DB操作Excel的实例代码知识点: 1. OLE DB简介: OLE DB是微软提供的一种数据访问技术,它是一个底层的API,用于访问多种数据源,例如数据库、文件、邮件系统等。在操作Excel文件时,OLE DB提供了一种...

    使用oledb读写excel出

    OLE DB 通过提供驱动程序(也称为提供者)来连接到不同的数据源,比如Microsoft Jet OLEDB提供者就可以用来连接Excel文件。 #### 三、连接Excel文件 在连接Excel文件之前,我们需要了解一些重要的概念和参数设置:...

    C#使用oledb操作excel文件的方法

    首先,我们要了解使用OleDb操作Excel文件的优点与限制。OleDb简单易用,能够快速读写Excel文件,支持较新的Excel版本。然而,它的缺点在于只能进行基本的读写操作,无法进行复杂的格式设置或公式编辑。此外,使用Ole...

    vb oledb连接excel2007

    VB 中使用 OLEDB 连接 Excel 2007 VB 语言作为一种广泛应用于 Windows 平台的编程语言,经常用于开发各种 Windows 应用程序,而在数据交互方面,OLEDB 是一种非常常用的技术,特别是在连接 Excel 等外部数据源时。...

    C#操作Excel(OLEDB)

    在IT行业中,C#是一种广泛使用的编程语言...总的来说,C#结合OLEDB为操作Excel提供了强大的能力,无论是简单的读写还是复杂的业务逻辑处理,都能应对自如。你可以根据这个基础代码进行扩展,实现符合你需求的特定功能。

    OleDb 的方式操作excel表

    * 4、对注册表的操作,解决读取Excel表格数据位数的限制【OperateRegedit】。 * 5、删除磁盘上指定的文件【ClearExcelFile】。 * 6、根据传入的Datatable数据源,生成Excel数据表...

    FG_List - Copy (2).rar_browngr1_excel_oledb

    以下是使用VB.NET和OLE DB操作Excel的一些关键知识点: 1. **VB.NET环境设置**:首先,你需要在VB.NET项目中引用"Microsoft.Office.Interop.Excel"库,这允许你与Excel对象模型交互。另外,也需要添加对"System....

    C#excel导入报错Microsoft.ACE.OLEDB.12.0.rar

    在C#编程中,当你尝试从Excel文件读取数据或者将数据写入Excel时,可能会遇到“Microsoft.ACE.OLEDB.12.0”这个错误。这个问题通常出现在尝试使用ACE OLEDB提供程序(Access Database Engine)连接到Excel文件时,而...

    OfficeExcel连接查询microsoft.ACE.oledb组件

    涉及的是在Microsoft Office Excel中使用ADO.NET(ActiveX Data Objects .NET)技术,通过Microsoft ACE (Access Connectivity Engine) OLEDB驱动程序来访问和操作Excel数据。这个过程在开发环境中非常常见,特别是...

    Microsoft.ACE.OLEDB.12.0

    标题 "Microsoft.ACE.OLEDB.12.0" 指的是 Microsoft Office 兼容性包中的一个组件,它是用于连接和访问 Excel、Access 和其他 Office 文件的数据提供程序。这个提供程序允许开发者通过 OLEDB(对象链接和嵌入数据库...

    C# WinFORM 窗体小程序 oledb技术读取EXCEL表格并展示

    此外,需要注意的是,虽然OleDb方式简单易用,但它的性能可能不如专门针对Excel的库,如EPPlus,后者可以提供更高效且更丰富的操作Excel数据的功能。然而,对于简单的读取和显示需求,OleDb已经足够了。如果你需要...

    Msoft.ace.oledb.12.0 x64

    标题"Msoft.ace.oledb.12.0 x64"指的是Microsoft Access Database Engine 12.0的64位版本,这是一个重要的组件,主要用于在Windows操作系统中连接和操作Access数据库文件(.mdb和.accdb格式)。"oledb"是OLE DB...

    ACE.OLEDB.12.0 _32和64.rar

    ACE OLEDB 12.0是Microsoft Access Database Engine的一个版本,用于处理Access数据库和其他多种格式的数据文件,如Excel、CSV等。它为开发人员提供了一个接口,使得他们能够通过编程方式连接并操作这些数据。"32"和...

    C#操作Excel的方法方法比较

    使用OLEDB操作Excel不需要启动Excel应用程序本身,而是通过数据库连接的方式读取或写入Excel文件中的数据。这种方式通常更加高效且占用系统资源较少。 **2.2 数据操作** - **建立连接**:首先需要根据Excel文件的...

    C#以OleDb方式访问Excel2007所需文件的安装程序

    总结来说,"C#以OleDb方式访问Excel2007所需文件的安装程序"主要涉及的技术点包括C#编程、OleDb连接、AccessDatabaseEngine.exe组件、连接字符串构造以及数据的读写操作。理解并掌握这些知识点,可以帮助开发者有效...

    microsoft.ace.oledb.12.0.rar

    标题 "microsoft.ace.oledb.12.0.rar" 涉及的是Microsoft Office Access连接引擎的一个版本,这是用于读写Access数据库文件(.mdb和.accdb)的组件。在描述中提到,这个压缩包是为了解决“microsoft.ace.oledb.12.0...

Global site tag (gtag.js) - Google Analytics