10.2 使用OLE DB.NET Data Provider

  OLE DB是访问数据库的另一个统一的接口标准,它建立在ODBC基础之上,通过OLE DB可以访问关系型数据库和非关系型数据库,OLE DB不仅使应用程序和数据库之间的交互减少,还能够最大限度的提升数据库性能。

10.2.1 OLE DB.NET Data Provider简介
  OLE DB(Object Link and Embedding Database,对象连接与嵌套数据库)是访问数据库的另一个统一的接口标准,它建立在ODBC基础之上,不仅能够提供传统的数据库访问,并且能够访问关系型数据库和非关系型数据库。
  OLE DB其本质就是一个封装数据库访问的一系列COM接口,使用COM接口不仅能够减少应用程序和数据库之间的通信和交互,也能够极大的提升数据库的性能,让数据库的访问和操作更加便捷。
  OLE DB.NET Data Provider是OLE DB数据源的托管数据提供者,OLE DB.NET Data Provider能够在不更改COM组件的情况下,使用COM Interpol来使用OLE DB.NET Data Provider访问数据源,如果需要使用OLE DB.NET Data Provider访问数据源,则必须存在一个支持OLE DB.NET Data Provider的OLE DB Provider。OLE DB.NET Data Provider访问原理图如图10-10所示。
OLE DB.NET Data Provider原理图
图10-10 OLE DB.NET Data Provider原理图
OLE DB.NET Data Provider支持OLE DB Provider包括:
1)SQLOLEDB:用来访问SQL Server数据库。
2)MSDAORA:用来访问Oracle数据库。
3)Microsoft.Jet.OLEDB.4.0:用于访问Access等使用Jet引擎的数据库。
  使用OLE DB.NET Data Provider访问数据库同ODBC .NET Data Provider相同,具有Connection对象、Command对象等用于数据库的连接和执行,以及数据存储等,常用对象如下所示。
1)OleDbConnection:建立与ODBC数据源的连接。
2)OleDbCommand:执行一个SQL语句或存储过程。
3)OleDbDataReader:与Command对象一起使用,读取ODBC数据源。
4)OleDbDataAdapter:创建适配器,用来填充DataSet。
5)OleDbCommandBuilder:用来自动生成插入、更新、删除等操作的SQL语句。
  这些常用的对象使用方法同其他ADO.NET数据操作类相同,使用Connection对象进行数据库连接,连接后,使用Command对象进行数据库操作,并使用Close方法关闭数据连接。

10.2.2 建立连接
  使用Ole Db连接数据库基本只需要使用字符串连接方式即可,当需要使用Ole Db中的对象时,必须使用命名空间System.Data.OleDb,示例代码如下所示。
+展开
-C#
using System.Data.OleDb;//使用OleDb命名空间

  使用命名空间后,就能够创建Ole Db的Connection对象,以及Command对象对数据库进行连接和数据操作。
1.使用接字符串进行连接(ACCESS)
  Access数据库是一种桌面级的数据库,同文件类型的数据库类似,所以连接Access数据库时,必须指定数据库文件的路径,或者使用Server.MapPath来确定数据库文件的相对位置。示例代码如下所示。
+展开
-C#
            string str = "provider=Microsoft.Jet.OLEDB.4.0 ;
            Data Source=" + Server.MapPath("access.mdb") + "";//设置连接字串
            OleDbConnection con = new OleDbConnection(str);//创建连接对象
            try
            {
                con.Open();//打开连接
                Label1.Text = "连接成功";//显式提示信息
                con.Close();//关闭连接
            }
            catch(Exception ee) //抛出异常
            {
                Label1.Text = "连接失败";
            }

  上述代码设置了Access数据库连接字串,并使用OleDb的Connection方法创建数据连接,创建连接后打开数据连接,如果数据连接打开成功,则返回成功,否则返回连接失败。
2.使用接字符串进行连接(SQL Server)
  当需要连接SQL Server时,无需对连接、执行等操作进行修改,只需要对数据库连接字串进行修改即可,示例代码如下所示。
+展开
-C#
            OleDbConnection con= new OleDbConnection();
            con.ConnectionString="Provider=SQLOLEDB;Data 
            Source=(local);Initial Catalog=mytable;uid=sa;pwd=sa";//初始化连接字串
            try
            {
                con.Open();//尝试打开连接
                Label1.Text = "连接成功";//显式连接信息
                con.Close();//关闭连接
            }
            catch
            {
                Label1.Text = "连接失败";//抛出异常
            }

  上述代码只需修改连接字串的格式,而无需修改其他ADO.NET中的对象,以及对象执行的方法即可。

加支付宝好友偷能量挖...


评论(0)网络
阅读(135)喜欢(0)Asp.Net/C#/WCF