使用ADO或ADO控件访问数据库
目录:
上篇文章,为大家讲解了数据库的接口,大家对ADO也有了较为基础的了解,这篇文章主要解决大家对ADO的用处的疑惑。VB为用户提供了很多访问数据库的方式:
【方法一】使用ADO对象,通过编写代码访问数据库
【方法二】使用ADO Data控件和数据环境设计器创建数据库连接,不编写代码访问数据库
一、首先我还是以Access数据库为例,介绍ADO对象访问数据库。
在ADO众多的对象中,经常使用的对象有Connection对象、Command对象和Recordset对象等。
ADO部分对象模型如图:
- Connection对象——连接数据源对象
ADO Connection对象进行与数据源唯一的连接。ADO Connection对象属性和方法如下:
*ConnectionString属性:指定连接数据源的基本信息
*Open方法:打开数据源连接
*Close方法:关闭数据源连接
- Command对象——命令对象
使用ADO Command对象创建参数查询。一般步骤:
- 创建Command对象,使用?作为Select语句中的查询参数
objcmd.commandtext="SELECT * FROM 系统用户 WHERE 用户名 LIKE ?"
使用command对象CreatParameter方法创建参数对象,然后将其添加到Command对象的Parameters集合中
Dim parm as new parameter Set parm=objcmd.createparameter("用户名",advarchar,adparaminput,10) Objcmd.parameters.append parm
- 设置查询参数的值
Objcmd("用户名")="admin"
- 执行Command对象的Execute方法完成查询
- Recordset对象——记录集对象
使用ADO Recordset 对象用于保存从数据源获得记录集。
ADO Recordset 对象的属性、集合和方法如下:
*ActiveConnection属性:代表数据源的活动连接,通常将其设置为已建立的Connection对象
*Eof属性:测试当前记录位置是否位于记录集的最后一个记录之后,eof属性将返回true,否则返回false。
*Fields集合:包含Recordset对象的所有Field对象,即可使用Fields来获得当前记录各个字段的值。
*Open方法:用于打开记录集,其参数为执行查询的SQL命令字符串
例如:objrs.Open("SELECT 口令" FROM 系统用户 WHERE 用户名 = '"")
有人会问了,ADO对象、应用程序和数据库有什么关系呢?我们用图表示一下:
ADO对象是连接应用程序和数据库的桥梁。
二、使用ADO Data控件和数据绑定设计器访问数据库
1、先介绍ADO Data控件访问数据库
在“工程”/“部件”中选中Microsoft ADO Data Control 6.0(OLEDB)添加到工具箱中,添加到窗体,下面详细介绍“属性页”对话框。右击ADO Data控件,在弹出的菜单中选择“ADODC属性”命令打开“属性页”对话框
- “通用”选项卡列出了,三种连接数据库的方式:
1、Data Link文件是包含连接字符串的文本文件,其扩展名为.udl。
2、使用ODBC数据源,选中,输入数据源名称,创建ODBC数据源即可
3、使用连接字符串,选中,生成连接字符串
- “身份验证”选项卡,设置登录数据源的身份信息
- “记录源”,设置访问数据源的方式
- “颜色”选项卡,设置控件的前景色和背景色
- “字体”选项卡,设置控件的标题的字体、大小和效果
数据绑定控件的属性包括:
*DataSouuce属性:用于返回或设置控件的数据源。
*DataMemver属性:用于返回或设置控件使用的数据源中的特定数据集。(数据源中包含多个数据集,则需要设置该属性,在设置该属性时,vb可自动列出源中可用的数据集;数据源只包含一个数据集,则不需要设置该属性)
*DataField属性:用于返回或设置绑定控件使用的特定字段。
*DataFormat属性:设置从数据源获得数据时的自动化格式。
2、数据环境设计器(Data Environment Dsigner)为访问数据库
数据环境设计器为访问数据库提供了一个交互的设计时环境。
打开:选择“工程”/“添加Data Environment”命令可为工程添加一个数据环境设计器。在“工程资源管理器”窗口中双击数据环境,即可打开数据环境设计器。
在设计时,可创建Connection和Command对象,编写ADO事件代码,执行Command,创建合计或层次结构的命令;还可拖动DataEnvironment对象到窗体或报表来创建数据绑定的控件。