第一课:
ADO.NET介绍
本节将介绍ADO.NET的一些基本概念,您将在后面章节进一步了解它们。通过本节,您将了解ADO.NET,并且理解data
provider,connection对象、command对象、DataReader对象、DataSet对象以及DataAdapter对象。对于没有经验的开发者开说,也许本课某些概念比较抽象,没有关系,我们将会在后续课程中详细展开。
介绍
ADO.NET是一组访问数据源的面向对象的类库。简单的理解,数据源就是数据库,它同时也能够是文本文件、Excel表格或者XML文件。本教程将以SQL
Server 2000 / 2005为示例数据库服务器,Northwind为示例数据库。
Data Providers
我们需要与不同类型的数据源或者数据库交互。然而,并没有这样的一组类库可以达到这个目的,因为各个数据源的协议各不相同,我们需要通过正确的协议来访问数据源。有些比较老的数据源用ODBC协议,其后的一些数据源用OleDb协议,现在,仍然还有许多新的数据源在不断出现。使用ADO.NET类库,你可以直接访问所有的数据源。
ADO.NET提供了访问数据源的公共方法,对于不同的数据源,它采用不同的类库。这些类库称为Data
Providers,并且通常是以数据源的类型以及协议来命名的。表1列出了常见的一些data
providers,以及它们所使用的API前缀和交互的数据源类型。
表1. ADO.NET Data
Providers是一组提供访问指定数据源的基本类库。API的开头字符表明了他们支持的协议。
Provider
|
API 前缀
|
数据源描述
|
ODBC Data Provider
|
Odbc
|
提供ODBC接口的数据源。一般是比较老的数据库。
|
OleDb Data Provider
|
OleDb
|
提供OleDb接口的数据源,比如Access或Excel。
|
Oracle Data Provider
|
Oracle
|
Oracle数据库
|
SQL Data Provider
|
Sql
|
Microsoft SQL Server数据库
|
Borland Data Provider
|
Bdp
|
通用的访问方式能访问许多数据库,比如Interbase、SQL
Server、IBM DB2和Oracle。
|
我们举一个实际的例子来理解表格中的API前缀。在这里你将学习到的第一个ADO.NET对象是连接对象(connection
object),顾名思义,你可以通过它建立与数据源的连接。如果我们使用OleDb
Data
Provider连接一个提供OleDb接口的数据源,那么我们将使用连接对象就是OleDbConnection。同理,如果连接Odbc数据源或者SQL
Server数据源就分别加上Odbc或者Sql前缀,即OdbcConnection或SqlConnection。在本教程里使用的是数据源是SQL
Server,所以你会发现所有的API对象都带有Sql前缀,比如SqlConnection。
ADO.NET对象
ADO.NET里包括了许多专门用于和数据打交道的对象。这一节介绍了一些最常用的对象。这些对象是学习ADO.NET必须了解的。掌握它们后你将了解使用ADO.NET和数据打交道会需要考虑哪些事情。
The SqlConnection Object
要访问一个数据源,你必须先建立一个到它的连接。这个连接里描述了数据库服务器类型、数据库名字、用户名、密码,和连接数据库所需要的其它参数。command对象通过使用connection对象来知道是在哪个数据库上面执行SQL命令。
The SqlCommand Object
连接数据库后就可以开始想要执行的数据库操作,这个是通过command对象完成,command对象一般被用来发送SQL语句给数据库。command对象通过connection对象得知道应该与哪个数据库进行连接。我们既可以用command对象来直接执行SQL命令,也可以将一个command对象的引用传递给SqlDataAdapter,SqlDataAdapter能包含一系列的command对象,可以处理大量数据,请见下面描述。
The SqlDataReader Object
根据经验,许多数据库操作要求我们仅仅只是需要读取一组数据。这时候就用到了data
reader对象。通过data
reader对象,我们可以获得从command对象的SELECT语句得到的结果。考虑到性能方面的因素,data
reader返回的数据流被设计为只读的、单向的,这将意味着你只能按照一定的顺序从数据流中取出数据。虽然你在这里也获得了性能上的提升,但是缺点也是明显的,不能够操作取回数据,如果需要操作编辑数据,解决的办法是使用DataSet。
The DataSet Object
DataSet对象用于表示那些储存在内存中的数据。它包括多个DataTable对象,DataTable就象一个普通的数据库中的表一样,也有行和列,我们甚至能够通过定义表和表之间的关系来创建从属关系。DataSet主要用于管理存储在内存中的数据以及对数据的断开操作。注意,由于DataSet对象能被所有Data
Providers使用,它不需要指定前缀。
The SqlDataAdapter Object
某些时候我们只需要读数据,并且你不需要修改它们把更改写回数据源。但是还有这样一些情况为了减少数据库调用的次数,我们把数据缓存在内存中。Data
adapter通过断开模型来轻松的实现了后面这种情况的处理。当批量完成的对数据库的读写操作的并将改变写回数据库的时候,data
adapter 会填充(fill)DataSet对象。data
adapter里包含了connection对象,当对数据源进行读取或者写入的时候,data
adapter会自动的打开或者关闭连接。此外,data
adapter还包含对数据的SELECT,INSERT,UPDATE和DELETE操作的command对象引用。如果我们为DataSet中的每一个table都指定data
adapter,它将会帮你处理好所有与连接处理数据库的操作,我们所需要做的仅仅就是告诉data
adapter什么时候读取或者写入到数据库。
总结
ADO.NET是用于和数据源打交道的.NET技术。它包含了许多的Data
Providers,分别用于访问不同的数据源――取决于它们所使用的数据库或者协议。然而无论使用什么样的Data
Provider,与数据源进行交互的的对象的使用方法都是相似的。SqlConnection对象用于管理与数据源的连接。SqlCommand对象可以向数据源发送SQL命令。SqlDataReader可以快速的从数据源获得只读的,向前的数据流。使用DataSet可以处理那些已经断开的数据(储存在内存中的),并通过SqlDataAdapter实现数据源的读取和写入。
这仅仅只是本系列ADO.NET指南中的开始。对于没有经验的开发者开说,也许本课某些概念比较抽象,没有关系,我们将会在后续课程中详细展开。我们将在下一课里深入学习
分享到:
相关推荐
ADO.NET精简教程(快速入门) ADO.NET是微软设计的一种数据访问技术,旨在帮助开发人员开发高效的多层数据库应用程序。ADO.NET中的数据连接有两种方式:直接连接和断开连接。直接连接中的主要对象是Command、...
《ADO.NET 4从入门到精通》是microsoft ADO.NET 4的入门教程,旨在帮助visual basic和c#开发人员了解ADO.NET及相关技术的核心概念。在《ADO.NET 4从入门到精通》的五大部分内容中,分别重点介绍了ADO.NET系统的不同...
在ADO.NET入门教程中,你可能会学到通过实例一步步建立数据库连接,执行基本的CRUD(创建、读取、更新、删除)操作,以及处理更复杂的查询。此外,教程可能还会介绍如何使用数据绑定技术将数据展示在用户界面中,...
本教程将详细介绍以上概念,通过实例演示如何创建数据库连接、执行查询、操作数据、处理事务以及使用数据绑定等,帮助初学者快速掌握ADO.NET的基本用法。在学习过程中,读者将能够构建自己的数据访问层,为实际项目...
ADO.NET是微软提供的一种数据访问技术,用于在.NET应用程序中高效地处理数据库。这个官方教程是英语版本,对于深入理解并掌握ADO.NET的核心概念、功能和用法具有极高的价值。下面将详细介绍ADO.NET的关键知识点。 1...
在ADO.NET中,可以创建一个DataTable对象,填充数据,然后将其作为参数传递给存储过程。 4. **ASP.NET**:虽然标签中提到了ASP.NET,但在这个实验中,ASP.NET主要作为前端开发框架,用于构建与数据库交互的Web应用...
本压缩包文件“ADO.NET 4从入门到精通源代码”包含了丰富的示例,旨在帮助初学者和有经验的开发者深入理解和掌握ADO.NET 4的核心概念。 1. **基础概念** - **DataSet**: ADO.NET的核心组件,它是一个离线数据集合...
通过一个名为Tebisco的案例研究,学生将看到一个实际应用场景,了解如何使用ADO.NET处理企业级的HR活动数据。 在课程的后续部分,学生将学习如何创建和管理ADO.NET对象,包括建立和管理连接、编写和执行SQL命令、...
ADO.NET是微软开发的一种数据访问技术,用于在.NET应用程序中高效地处理数据库。它作为.NET框架的一部分,提供了与各种数据库(如SQL Server、Oracle、MySQL等)交互的能力。本教程将深入探讨ADO.NET的核心概念、...
ADO.NET是微软.NET框架中用于访问数据库的核心组件,它提供了一组全面的接口和类库,使得开发者可以高效地处理数据。在这个“ADO.NET项目案例”中,我们将深入探讨如何利用ADO.NET进行实际的项目开发,通过具体实例...
本课程介绍ADO.NET技术的基本概念,并结合实际开发,重点介绍DataSet对象和DataGrid控件的使用,使初学者也可以轻松完成报表、产品列表、查询结果显示、导航菜单等功能。 1.视频讲课2.教程3.源码4.Q&A
本教程将深入探讨ADO.NET的核心概念、主要组件以及如何利用它们来实现数据库的实例操作。 在ADO.NET中,主要涉及以下关键组件: 1. **Connection对象**:这是数据库连接的基础,负责建立应用程序与数据库之间的...
ADO.NET 4 是微软开发的一款用于访问数据库的强大框架,它为.NET Framework应用程序提供与各种数据库交互的能力。在ADO.NET 4中,微软引入了多项改进和新特性,以提升性能、简化开发流程并增强可扩展性。这个"ADO...
首先,ADO.NET(ActiveX Data Objects .NET)是微软提供的一个数据访问接口,它允许开发人员在.NET应用程序中连接、查询和操作数据库。ADO.NET的核心组件包括DataSet、DataTable、DataAdapter和Connection对象。...
ADO.NET 实例教程和代码下载 ADO.NET 实例教程和代码下载 ADO.NET 实例教程和代码下载
作为一个全面的、面向对象的数据访问技术,ADO.NET提供了一种高效、灵活的方式与各种数据源进行交互,包括关系数据库、XML文件和其他数据存储系统。与早期的ADO(ActiveX Data Objects)相比,ADO.NET在设计上进行了...
【标题】:“【传智播客.Net培训—ADO.Net】5练习登录”指的是一个关于ADO.NET技术在实际登录功能中的应用教程。这个练习可能是针对初学者或者已经有一定基础的.Net开发者设计的,旨在通过实际操作加深对ADO.NET的...
最后是ADO.NET Entity Framework,它是一个全面的ORM框架,首次在.NET Framework 3.5 SP1中发布,后续版本中得到了不断优化。EF提供了更高级别的抽象,通过Entity Data Model(EDM)将数据库模型转化为对象模型,...