读书人

用VB的Data控件显示Access数据库(通讯

发布时间: 2012-01-07 21:41:55 作者: rapoo

用VB的Data控件显示Access数据库(通讯录)
用VB的Data控件显示Access数据库(通讯录),程序如下:

Public myRecordSet As Recordset

'Mainform.frm:
'-----------------------
Private Sub Form_Load()
Set myRecordSet = dbDataEnvironment.Recordsets.Item(1)
End Sub

Private Sub mnBrow_Click()
browDialog.Show 1
End Sub

Private Sub mnExit_Click()
End
End Sub

'-----------------------------------
'dataDialog.frm
'----------------------------------
Private Sub Form_Activate()
mainForm.myRecordSet.Open ' <---------
mainForm.myRecordSet.MoveFirst
End Sub

Private Sub OKButton_Click()
Unload Me
End Sub


问题: 加上箭头所指的一句显示出错,
不加这句显示数据库末打开不可操作。
哪能儿错啊?怎么改啊?教教我吧。

[解决办法]
请将数据库路径及名称改为你自己的数据库据库路径及名称。窗体上添加几个与通讯录字段数相同的TextBOX,将各TextBOX的属性页的属性DataSource设置Data1,各TextBOX的属性页的属性DataField设为通讯录各字段名。将SQL语句的表名改为你的数据表名。代码如下:

Option Explicit
Dim sql As String
Dim a1 As String

Private Sub Form_Load()
a1 = InputBox( "请输入号码! ", "查找 ")
sql = "select * from ”
Data1.DatabaseName = "D:\Program Files\Microsoft Visual Studio\VB98\通讯录.mdb "
Data1.RecordSource = sql
End Sub

[解决办法]
首先建议用datagrid 显示数据,
data控件不支持office2000的。用ado
给你个例子
你试试吧,好用的
记得要引用ado
你只需要在工程/引用 miscrosoft Activex data objects 2.x library 就可以了
Dim Db As Connection
Dim WithEvents adoPrimaryRS As Recordset '数据库连接对象
Private Sub Command1_Click()


strsql= "select 字段 from 表 where 你的条件 "
Set Db = New Connection
Db.CursorLocation = adUseClient
'下面的连接数据字符串你要修改一下
Db.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= " & App.Path & "\计划管理系统.mdb;Persist Security Info=False "
Set adoPrimaryRS = New Recordset
adoPrimaryRS.Open strsql, Db, adOpenStatic, adLockOptimistic
Set DataGrid1.DataSource = adoPrimaryRS
end sub


读书人网 >VB

热点推荐