2024年6月14日发(作者:)
第五课:
自身并不具备对数据库进行操作的功能,它对数据库的处理是通过.NET FrameWork SDK
中面向数据库编程的类库和微软的MDAC(数据访问组件)来实现的。数据访问技术是任何实际应用程序
的核心部分。
是一个功能强大的数据接口程序。通过所提供的对象,再配合SQL语句就可以
访问数据库内的数据,而且凡是ODBC或OLE DB接口访问的数据库(如Dbase、FoxPro、Excel、Access、
SQL Server、Oracle等),也可以通过来访问。
第一节:的简介
1.1.1、定义:
的名称起源于ADO(ActiveX Data Objects),这是一个广泛的类组,用于在以往的Microsoft
技术中访问数据。之所以使用名称,是因为Microsoft希望表明,这是在NET编程环境中优先
使用的数据访问接口。
1.1.2、:
在创建数据库后,需要通过将数据库连接到应用程序中。如图所示为
连接数据库与应用程序的过程模拟图。模型中包含了能够有效地管理数据的组件类。
的根命名空间是,的主要组件是数据连接、数据适配器和数据集,它们包含了对
数据库进行操作的大部
第二节:的构成
3.0 用于访问和操作数据的两个主要组件是 .NET Framework 数据提供程序
和 DataSet。
(1) .NET Framework 数据提供程序是专门为数据操作以及快速、只读访问数据而设计的组
件。 Connection 对象提供到数据源的连接。 使用 Command 对象可以访问用于返回数据、修改数据、运
行存储过程以及发送或检索参数信息的数据库命令。 DataReader 可从数据源提供高性能的数据流。 最后,
DataAdapter 在 DataSet 对象和数据源之间起到桥梁作用。 DataAdapter 使用 Command 对象在数据源中
执行 SQL 命令以向 DataSet 中加载数据,并将对 DataSet 中数据的更改协调回数据源。
(2) DataSet: DataSet 的设计已明确指出它可独立于任何资料来源外而存取资料。因此,它
可与多个不同的资料里来源搭配使用、与 XML 资料搭配使用,或用于管理应用程序的本机资料。DataSet
包含一或多个由资料列和资料行所组成的 DataTable 物件集合,以及 DataTable 物件中的主索引键、外
部索引键、条件约束 (Constraint) 及资料的相关资讯。
的类库:
1.2.1 Connection 类
和数据库交互,必须连接它。连接帮助指明数据库服务器、数据库名字、用户名、密码,和连接数据
库所需要的其它参数。
1.2.2 DataAdapter类
通过连接对象连接到数据源后,就可以通过连接来创建数据适配器处理数据。数据适配器负责维护与
数据源的连接。此对象在对象下达指令后,将取得的数据放入DataSet 对象中。因此它主要是在数据库与
DataSet对象之间传递数据。
默认情况下,应用程序与数据源之间并不保持活动连接,与数据源之间的连接是断开的,只有在需要
时,才通过数据适配器连接到数据源,这使得系统资源的开销大大减少,尤其适用于进行网络数据库程序
设计。
1.2.3 DataReader类
许多数据操作要求开发人员只是读取一串数据。DataReader对象允许开发人员获得从Command对
象的SELECT语句得到的结果。考虑性能的因素,从DataReader返回的数据都是快速的且只是“向前”的
数据流。这意味着开发人员只能按照一定的顺序从数据流中取出数据。这对于速度来说是有好处的,但是
如果开发人员需要操作数据,更好的办法是使用DataSet。
1.2.4 DataSet类
有了数据适配器后,就可以使用数据适配器生成相应的数据集(DataSet)对象,对数据的操作主要
由数据集完成。
数据集是 模型的核心构件,位于t命名空间中,由数据库及其关系构
成,它代表了一个数据“缓存”,即在程序中为数据所分配的内存空间,它模拟了关系数据库的结构。每
个DataSet都可以包含多个DataTable对象,每个DataTable都包含来自某个数据源的数据。
DataSet在程序设计中有一个很大的优点,它在程序运行中是“断开”的,也就是说,程序在处理DataSet
中的数据时,无需建立与数据库的持久连接,只有在填充数据和保存对数据的修改时才需要与数据源相连
接。在其他时间处理数据时,不需要保持与数据源的连接,极大地节省了系统开销。
1.2.5 DataTable类
DataTable 是一个数据网格控件。它可以被应用在 VB 和 ASP 上。它无须代码就可以简单的绑定数
据库。它具有微软风格的用户界面。
1.2.6 Command对象
成功与数据建立连接后,就可以用Command对象来执行查询、修改、插入、删除等命令; Command
对象常用的方法有ExecuteReader()方法、ExecuteScalar()方法和ExecuteNonQuery()方法;插
入数据可用ExecuteNonQuery()方法来执行插入命令。
第 三节 数据连接(connection类属性和方法)
创建一个到达某个数据源的开放连接。通过此连接可以对一个数据库进行访问和操作。
1.3.1属性:
图连接数据库与应用程序的过程模拟图
(1)ConnectionString属性: 可设置或返回用于建立到数据源的连接的信息.
语法:tionString="para1=value;para2=value;"
基本属性:Provider:提供数据库程序的类型;Data Source:数据源的位置
举例:tionString="Provider=.4.0; Data Source="
(2)state
State 属性可返回一个值,该值描述对象当前状态是打开、关闭、正在连接、正在执行还是正在检索数
据。 state值为0,意味着未连接数据库;1代表链接数据库成功。
if =1 then
msgbox("连接数据库成功")
set conn=nothing ‘释放内存
end if
属 性
ConnectionString
Provider
State
描 述
设定连接数据源的信息,包括 FlieName、Password、
Userld、DataSource、Provider 等参数。
设置连接的数据提供者(数据库管理程序)
读取当前链接对象的状态,取0表示关闭,1表示打开。
1.3.2 方法;
(1)open方法:可打开一个到数据源的连接。当连接打开时,您可以对数据源执行命令。
语法: connectionstring,userID,password,options
()
(2)close方法: 关闭 Connection 对象、Record 对象、Recordset 对象或者 Stream 对象,以释放系
统资源。
注释:关闭对象不会将其从内存中删除;随后可以更改其属性设置并再次将其打开。要从内存中彻底
清除对象,请在关闭对象后将对象变量设置为 Nothing
第四节 使用
Connection访问数据库(详细步骤,参见示例1)
第一部分:准备工作:
第一步:项目——添加windows窗体,“解决方案资源管理器”中多了一个窗体。
打开属性窗体
(1) topmost :false
(2)text: “数据库连接测试”
第二步:双击“数据库连接测试”进入代码输入窗体:
第三步:在form3添加一个按钮“连接测试”.双击“命令按钮”进入代码窗口。
1.4.1、访问数据的第一步就是要连接到数据库:
无论连接到哪一种关系数据库,都必须用Imports将相关的数据提供者的命名空间导入,否则会产生错
误,举例来说:(课本书中P109)
(1)要连接到SQL Server: Imports ent
(2)要连接到Access: Imports
1.4.2、因为要与access数据库连接,因此声明一个oledbconnection对象
Dim oledb1(变量名) As New onnection
1.4.3、创建数据连接
tionString = "Provider=.4.0;Data Source="
1.4.4 使用open打开数据库的连接
()
1.4.5 执行相关的数据库操作
在此省略„„,后面知识讲解完成后介绍使用
1.4.6 关闭数据库,释放内存空间
()
1.4.7 全部代码 (运行程序前,先要程序全部保存后,将Tu数据库,放在本程序文件夹binDebug)
Imports
„Imports将相关的数据提供者的命名空间导入,否则会产生错误
Public Class Form3
Dim oledb1 As New onnection
„打开数据库的连接
Private Sub Form3_Load(ByVal sender As , ByVal e As rgs) Handles
tionString = "Provider=.4.0;Data Source="
()
If Then „如果已经打开了
Msgbox(“数据库已经打开了”) „ 进行数据库的相关操作
() „关闭数据库
oledb1=nothing „释放内存
End If
End Sub
End Class
发布评论