C与数据库访问技术

上传人:夏** 文档编号:486081391 上传时间:2023-10-19 格式:DOC 页数:135 大小:593KB
返回 下载 相关 举报
C与数据库访问技术_第1页
第1页 / 共135页
C与数据库访问技术_第2页
第2页 / 共135页
C与数据库访问技术_第3页
第3页 / 共135页
C与数据库访问技术_第4页
第4页 / 共135页
C与数据库访问技术_第5页
第5页 / 共135页
点击查看更多>>
资源描述

《C与数据库访问技术》由会员分享,可在线阅读,更多相关《C与数据库访问技术(135页珍藏版)》请在金锄头文库上搜索。

1、.1ADO.NET概述21.1ADO.NET体系结构21.2ADO.NET对象模型32.2Connection对象与数据库连接42.2.1Connection对象的常用属性42.2.2Connection对象的连接字符串52.2.3Connection对象的常用方法72.3Command(数据命令)对象与查询语句112.3.1Command对象的常用属性112.3.2Command对象的常用方法122.3.3Command对象创建SQl语句代码示例16综合示例184.4.2实例演示DataReader322.4DataReader对象与数据获取352.4.1DataReader对象的常用属性3

2、52.4.2DataReader对象的常用方法352.4.3DataReader对象访问数据库代码示例362.5DataAdaDter对象382.5.1DataAdapter对象的常用属性382.5.2DataAdapter对象的常用方法392.5.3DataAdapter对象代码示例402.6DataSet对象422.6.1DataSet对象概述422.6.2DataSet对象模型422.6.3DataCOIumn和DataRow对象442.6.4使用DataSet对象访问数据库472.7ADO.NET代码综合示例482.7.1使用OLEDB.NETProvider482.7.2使用SQLS

3、erver.NETProvider492.7.3数据库访问综述502.8DataGrid控件与数据库访问技术502.8.1DataGrid控件与数据绑定502.8.2DataGrid代码示例502.9本章小结52C#与数据库访问技术ADO.NET(ActiveXDataObject.NET)是Microsoft公司开发的用于数据库连接的一套组件模型,是ADO的升级版本。由于ADO.NET组件模型很好地融入了.NETFramework,所以拥有.NETFramework的平台无关、高效等特性。程序员能使用ADO.NET组件模型,方便高效地连接和访问数据库。1ADO.NET概述ADO.NET是与数

4、据库访问操作有关的对象模型的集合,它基于Microsoft的.NETFramework,在很大程度上封装了数据库访问和数据操作的动作。ADO.NET同其前身ADO系列访问数据库的组件相比,做了以下两点重要改进:ADO.NET引入了离线的数据结果集(DisconnectedDataSet)这个概念,通过使用离线的数据结果集,程序员更可以在数据库断开的情况下访问数据库。ADO.NET还提供了对XML格式文档的支持,所以通过ADO.NET组件可以方便地在异构环境的项目间读取和交换数据。1.1ADO.NET体系结构ADO.NET组件的表现形式是.NET的类库,它拥有两个核心组件:.NETDataPro

5、vider(数据提供者)和DataSet(数据结果集)对象。.NETDataProvider是专门为数据处理以及快速地只进、只读访问数据而设计的组件,包括Connection、Command、DataReader和DataAdapter四大类对象,其主要功能是:在应用程序里连接数据源,连接SQLServer数据库服务器。通过SQL语句的形式执行数据库操作,并能以多种形式把查询到的结果集填充到DataSet里。DataSet对象是支持ADO.NET的断开式、分布式数据方案的核心对象。DataSet是数据的内存驻留表示形式,无论数据源是什么,它都会提供一致的关系编程模型。它是专门为独立于任何数据源

6、的数据访问而设计的。DataSet对象的主要功能是:用其中的DataTable和DataRelations对象来容纳.NETDataProvider对象传递过来的数据库访问结果集,以便应用程序访问。(2)把应用代码里的业务执行结果更新到数据库中。并且,DataSet对象能在离线的情况下管理存储数据,这在海量数据访问控制的场合是非常有利的。图2-1描述了ADO.NET组件的体系结构。图2-1ADO.NET体系结构1.2ADO.NET对象模型ADO.NET对象模型中有5个主要的数据库访问和操作对象,分别是Connection、Command、DataReader、DataAdapter和DataS

7、et对象。其中,Connection对象主要负责连接数据库,Command对象主要负责生成并执行SQL语句,DataReader对象主要负责读取数据库中的数据,DataAdapter对象主要负责在Command对象执行完SQL语句后生成并填充DataSet和DataTable,而DataSet对象主要负责存取和更新数据。ADO.NET主要提供了两种数据提供者(DataProvider),分别是SQLServer.NETProvider和OLEDB.NETProvider。SQLServer.NETFramework数据提供程序使用它自身的协议与SQLServer数据库服务器通信,而OLEDB.

8、NETFramework则通过OLEDB服务组件(提供连接池和事务服务)和数据源的OLEDB提供程序与OLEDB数据源进行通信。它们两者内部均有Connection、Command、DataReader和DataAdapter4类对象。对于不同的数据提供者,上述4种对象的类名是不同的,而它们连接访问数据库的过程却大同小异。这是因为它们以接口的形式,封装了不同数据库的连接访问动作。正是由于这两种数据提供者使用数据库访问驱动程序屏蔽了底层数据库的差异,所以从用户的角度来看,它们的差别仅仅体现在命名上。表2-1描述了这两类数据提供者下的对象命名。表2-1ADO.NET对象描述对象名OLEDB数据提供

9、者的类名SQLServer数据提供者类名Connection对象OleDbConnectionSqlConnectionCommand对象OleDbCommandSqlCommandDataReader对象OleDbDataReaderSqlDataReaderDataAdapter对象OleDbDataAdapterSqlDataAdapter2.2Connection对象与数据库连接在不同的Provider类型下,Connection对象的命名也是不同的,但它们有一个共同的功能,那就是管理与数据源的连接。2.2.1Connection对象的常用属性Connectionion对象主要用于连接

10、数据库,它的常用的属性如下。ConnectionString属性:该属性用来获取或设置用于打开SQLServer数据库的字符串。ConnectionTimeout属性:该属性用来获取在尝试建立连接时终止尝试,并生成错误之前所等待的时间。DataBase属性:该属性用来获取当前数据库或连接打开后要使用的数据库的名称。DataSource属性:该属性用来设置要连接的数据源实例名称,例如SQLServer的Local服务实例。State性该属性:是一个枚举类型的值,用来表示同当前数据库的连接状态。该属性的取值情况和含义如表2-2所示。表2-2Provider值描述(ConnectionSate枚举成

11、员值)属性值对应含义Broken该连接对象与数据源的连接处于中断状态。只有当连接打开后再与数据库失去连接才会导致这种情况。可以关闭处于这种状态的连接,然后重新打开(该值是为此产品的未来版本保留的)Closed该连接处于关闭状态Connecting该连接对象正在与数据源连接(该值是为此产品的未来版本保留的)Executing该连接对象正在执行数据库操作的命令Fetching该连接对象正在检索数据Open该连接处于打开状态State属性一般是只读不写的,以下代码演示了使用State属性管理控制数据连接的方式。/设置连接对象SqlConnectionconn;/如果是空闲状态,连接数据库if(con

12、n.State=ConnectionState.Closed)conn.Open();/访问数据库的代码/最后关闭连接if(conn.State=ConnectionState.Open)conn.Close();2.2.2Connection对象的连接字符串在ConnectionString连接字符串里,一般需要指定将要连接数据源的种类、数据库服务器的名称、数据库名称、登录用户名、密码、等待连接时间、安全验证设置等参数信息,这些参数之间用分号隔开。下面将详细描述这些常用参数的使用方法。1.Provider参数Provider参数用来指定要连接数据源的种类。如果使用的是SQLServerDat

13、ahovider,则不需要指定Provider参数,因为SQLServerDataProvider已经指定了所要连接的数据源是SQlServer服务器。如果使用的是O1eDBDataProvider或其他连接数据库,则必须指定Provider参数。表2-3说明了Provider参数值和连接数据源类型之间的关系。表2-3Provider值描述Provider值对应连接的数据源SQLOLEDBMicrosoftOLEDBProviderforSQLServerMSDASQLMicrosoftOLEDBProviderforODBCMicrosoft.Jet.OLEDB.4.0MicrosoftOL

14、EDBProviderforAccessMSDAORAMicrosoftOLEDBProviderforOracle2.Server参数Server参数用来指定需要连接的数据库服务器(或数据域)。比如Server=(local),指定连接的数据库服务器是在本地。如果本地的数据库还定义了实例名,Server参数可以写成Server=(local)实例名。另外,可以使用计算机名作为服务器的值。如果连接的是远端的数据库服务器,Server参数可以写成Server=IP或“Server=远程计算机名”的形式。Server参数也可以写成DataSource,比如DataSource=IP。server=

15、(local);InitialCatalog=student;userId=sa;password=;DataSource=(localhost);InitialCatalog=student;userId=sa;password=;3.DataBase参数DataBase参数用来指定连接的数据库名。比如DataBase=Master,说明连接的数据库是Master,DataBase参数也可以写成InitialCatalog,如InitialCatalog=Master。4.Uid参数和Pwd参数Uid参数用来指定登录数据源的用户名,也可以写成UserID。比如Uid(UserID)=sa,说明登录用户名是sa。Pwd参数用来指定连接数据源的密码,也可以写成Password。比如Pwd(Password)=,说明登录密码

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号