摘要:数据库编程是VB程序设计的重要应用之一,利用VB设计的用户界面去操作数据库可以很方便地实现数据的安全性控制、合理分工、分时使用数据库以及界面美观,操作灵活、方便等一系列优点。
关键词:数据库控件;数据库感知控件;Data;Adodc;属性;方法
中图分类号:TP311文献标识码:A文章编号:1009-3044(2009)14-3700-02
VB Database Programming Control
LI Ying
(High Technical School in Dongguan City, Dongguan 523000, China)
Abstract: VB Database Programming is programming one of the important applications, the use of VB user interface designed to operate the database it is easy to achieve data security control, a reasonable division of labor, time to use the database as well as beautiful interface, operation flexibility, to facilitate a series of advantages.
Key words: database controls; database-aware controls; Data; Adodc; properties; methods
1 引言
利用VB编程实现对数据库的操作有许多不同的控件,每种控件又有不同的连接和读写的方法,就算同一种控件连接不同的数据库,在使用中也稍有不同,这些问题给初学者带来很多困扰,本文以Access数据库结合Data控件为例讲述数据库编程的一些具体方法和步骤,对初学者有一定的参考和借鉴意义。
2 VB操作数据库的主要控件或方法
VB操作数据库的主要控件大体有以下几种:
1) Data控件及其相关的数据感知控(如:DBGrid、DBList、DBCombo、MsFlexGrid等等)。
Data是VB的标准控件,其优点是使用方便、操作简单、方法和属性多,技术也比较成熟,缺点是仅能连接操作本地数据库,且该控件比较古老,能够连接的数据库库种类不多,不能识别Access2000及以上的版本,使用前必须利用菜单功能转换成Access97以下低版本才能连接和使用。因此一般用于初学者打基础就可以了。
2) Adodc控件及其相关的数据感知控(如:DataGrid、DataList、DataCombo、MsHFlexGrid等等)。
ADO即ActiveX数据对象,是目前最新的数据访问接口,又称为OLE自动化接口,是访问由Microsoft推出的最新、功能最强的应用程序接口。ADO是为OLE DB而设计的。(OLE DB是微软的战略性的通向不同的数据源的低级应用程序接口,OLE DB不仅包括微软资助的标准数据接口开放数据库连通性的结构化问题语言(SQL)能力,还具有面向其他非SQL数据类型的通路),因此,ADO Data控件能访问各种类型的数据库,这是Data控件无法实现的。
3) 纯编程实现数据连接操作的ADO和RDO方法。
VB用纯编程的方法实现数据的连接操作具有通用性好,操作灵活方便,安装时不受文件目录及位置影响,无需手式设置和人工干预。适合比较大型的专业程序开发设计。
3 VB操作数据库的过程和步骤
不论采用哪种方法进行数据库编程,大体上都要从下面几方面入手进行设计:
1) 确定立所用控件,建立VB与数据库的连接(可以是手工或使用连接字进行连接,因控件的不同而异),一般用ConnectString或DataBaseName属性。
2) 建立记录源,指定需要操作的表,一般用RecordSource属性。
3) 设置显示控件与数据库记录集控件的关联属性。
4 Data控件的使用方法
4.1 主要连接属性
Connect:数据库连接的种类(VB默认为Access数据库)。
Databasename:被连接的数据全名(含路径)。
RecordSource:被连数据库的表或查询。
RecordsetType:指出读/写表记录的方法(是只读还是可写等)
* Table---可以浏览、查询、修改和更新。(单表)
* Dynaset---可以对多表操作,但不自动更新。(可以是多表查询)
* Snapshot---对记录只能读不能写。
4.2 文本型控件Text与Data控件的梆定
DataSource=Data1(可以一次性统一指派)
DataField=相关字段
具体见下图1,图2所示。
图1 图2
小结:以上是用设计方法进行连接设置,更换机器或目录均不能运行,可移植性较差。
图3是运行效果图。
4.3 通过代码进行连接设置
图4是通过代码进行连接设置的。
注意:Text控件的DataSource属性不能通过代码设计,必须手工设置。
见图5所示。
相关代码如下:
Private Sub Form_Load()
'Data1.Connect = "Access"此句可以省略
'Text1.DataSource = Data1此句错误,不能用代码,要在设计时指定。
'Text2.DataSource = Data1此句错误,不能用代码,要在设计时指定。
Data1.DatabaseName = App.Path + "\xsdn.mdb"
Data1.RecordSource = "xsdn"
Text1.DataField = "学号"
Text2.DataField = "姓名"
Text3.DataField = "家庭地址" '此处注意与表字段名保持同名
End Sub
如图6所示。
小结:代码设计的优点是:移植性稍好,但要保证数据放在应用程序同一个目录或文件夹之中才行。
5 Data控件的其他方法
AddNew-----向相关表添加一条新记录。如 Data1.Recordset.Addnew
Delete-----向删除相关表当前的一条记录,指针自动向下移动。
Edit-----用于对可更新的当前记录进行编辑修改。
Move----记录移动组群,含MoveFirst、MoveLast、MoveNext、MovePrevious。
Find----查找方法的组群,含FindFirst、FindLast、FindNext、FindPrevious方法。
Refresh---更新数据控件的集合内容。
Seek-----通过索引的方法查找表记录。
Update----将修改的记录内容保存到数据库表中去。
RecodCount----返回记录集中符合条件的记录总数。
UpdateControls----用于恢复修改记录之前的记录内容。(没有Recordset字)
例如,设计一个通过文本框输入姓名进行记录查找的界面。相关代码如下:
Private Sub Command1_Click()
Data1.Recordset.FindFirst "姓名='" & Text4 & "'"
IfData1.Recordset.NoMatch Then
MsgBox "查无此人"
End If
End Sub
如图7所示。
6 结束语
VB数据库编程是企业实现自动化数据管理的最基本应用,通过VB界面操作数据库可以使用信息更安全,比如你可以建立用户登录,根据用户的不同进行不同操作的界面,也可以使不同的用户分担不同的工作。在学习数据库编程时应先从简单的控件入手,掌握其基础方法、属性,再过渡到复杂的数据控件这样学习起来就得心应手。
参考文献:
[1] 郑阿奇.Visual Basic实用教程[M].北京:电子工业出版社,2005.
[2] 陈紫红.Visual Basic项目开发实例[M].北京:清华大学出版社,2008.