欢迎光临
我们一直在努力

VB6连接Access数据库并进行读写操作

在VB6开发中,有时需要处理一些数据或存储用户信息,用TXT文件十分不便,读写麻烦。而使用数据库则很有必要。

在VB6编程中,可以使用多种方法连接数据库,而ADODB连接非常方便,兼容性也十分良好,所以用ADODB连接数据库成为了不二之选。

什么是ADODB?

ActiveX Data Objects Database Library(简称ADODB),是Windows下的一个通用库,通常位于"C:\\Program Files (x86)\\Common Files\\System\\ado"目录下,它的功能主要有连接数据库,写入数据库,读取数据流等,功能非常强大。

使用ADODB访问数据库

1.通过VB6引用库访问

第一步,打开VB6,新建一个标准EXE,点击窗口上方的工程菜单,点击引用

在弹出的对话框中下滑,找到"Microsoft ActiveX Data Objects x.x Library"(如下圈中的,没有的自行在网上下载,一般电脑都有)

随便选择一个版本,点击旁边的方框,将其打上“√”,点击确定。此时ADODB就添加到了工程中

打开代码框,在Option Explicit 下面一行输入如下代码创建对象

Option Explicit

Dim conn As New ADODB.Connection
Dim rs As New ADODB.Recordset

2.通过Windows API 访问

打开代码框,输入如下代码创建对象

Option Explicit

Dim conn As Object
Dim rs As Object

Private Sub Form_Load()
Set conn = CreateObject("ADODB.Connection")
Set rs = CreateObject("ADODB.Recordset")
End Sub

3.连接数据库代码

3.1 连接字符串代码

在Form_Load事件中输入如下代码,引用访问和API访问代码相同,效果也相同

Dim constr As String
constr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\path\\to\\your\\database.mdb;"
conn.ConnectionString = constr

代码解析

Dim constr As String : 用于创建字符串类型变量constr,作为conn的连接字符串

constr = "Provider=…" : 给变量constr赋值

连接字符串 : 1.Provider:是数据库引擎,此处使用Jet引擎,只支持.mdb格式数据库,需要支持.accdb格式的需换成"Microsoft.ACE.OLEDB.12.0"

Data Source : 数据源也就是数据库路径,C:\\path\\to\\your\\database.mdb 替换为实际路径

conn.ConnectionString = constr : 将变量constr的值赋给conn对象的ConnectionString属性

3.2 打开数据库连接

下一步,输入此代码

conn.Open

代码解析

这段代码的作用是打开数据库连接

3.3 打开数据表

接着,输入如下代码

rs.Open "SELECT * FROM SheetName", conn

代码解析

rs.Open : 打开数据库,执行SQL语句

"SELECT * FROM SheetName" : 是SQL语句,作用是选择"SheetName"表中的所有元素,SheetName替换为实际的表名,如 "UserName"、"用户信息"

3.4 添加 DataGrid控件

首先,右键控件栏,点击部件,选择"Microsoft DataGrid Cotrol 6.0 (SP6) (OLEDB)"

将其打勾,然后点击确定,此时控件栏会多出一个DataGrid控件

将控件放置到窗口中,名称为DataGrid1

3.5 将数据绑定到 DataGrid

在 rs 打开后,输入以下代码

Set DataGrid1.DataSource = rs
DataGrid1.Refresh

此时,运行程序,DataGrid上就出现了表

代码解析

Set DataGrid1.DataSource = rs : 将DataGrid1的数据源设置为已经打开的rs对象

DataGrid1.Refresh : 刷新DataGrid的界面

4.ADODB写入数据库

4.1 新增行/列

4.1.1 新增行

在 rs 已经打开后,输入如下代码,假设此表如下

rs.AddNew
rs.Fields("字段1").value = "设置的数值"
rs.Fields("字段2").value = "值2"

此时表的值应为如下

4.1.2 新增列

打开 rs 后 输入以下代码

rs.Fields.Append "字段3", adEmply

执行完以下代码后,表的结构应为如下

4.2 更改现有数据

打开 rs 后,输入如下代码

rs.MoveFirst
rs.Fields("字段1").value = "更改后的内容"

此代码将光标移动到第一个并更改"字段1"的内容。

此时的表应该如下

4.3 移动光标

光标的意思就是表当前所选择的记录,如上图的光标位置就是2

4.3.1 移动光标方法函数

1.rs.MoveFirst : 移动到当前表的第一条记录。

2.rs.MoveNext : 移动到当前记录的下一条记录,如果当前为最后一条记录,则报错下标越界。

3.rs.Move [NumRecords As Long] : 移动到当前表的某一条记录,NumRecords为必选参数,指定记录索引,不存在则报错下标越界。

4.rs.MoveLast : 移动到当前表的最后一条记录。

结语

通过 ADODB 可以轻松的访问 Access 数据库,并对其进行操作。这使它成为VB6访问数据库的不二之选。且 ADODB 兼容性极好,不仅局限于VB6。所以如果没有特殊需求,访问数据库首选 ADODB 。

赞(0)
未经允许不得转载:171主机测评 » VB6连接Access数据库并进行读写操作
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址