标题:[求助]实时错误3001
只看楼主
jmasm
Rank: 1
等 级:新手上路
威 望:1
帖 子:368
专家分:0
注 册:2006-9-24
 问题点数:0 回复次数:4 
[求助]实时错误3001

Dim ADOcn As New Connection
Public Sub main()
Dim strAccess As String
strAccess = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=mydata.mdb;Persist Security Info=False"
If ADOcn Is Nothing Then

ADOcn.Open strAccess

End If
frmmain.Show
End Sub

上面的能编译通过
我把sub main设为启动项
然后在一个表单中
Private Sub Form_Load()
Dim strSQL, str1 As String
Dim ADOrs As New Recordset
ADOrs.ActiveConnection = ADOcn '当我把记录集adors与数据库adocn绑定时就出错了
strSQL = "select * from phone"
ADOrs.Open strSQL

str1 = "联系人" + vbTab + "QQ" + vbTab + "手机" + vbTab + "座机" + vbTab + "出生日期"
With MSFlexGrid1
.Clear
.Rows = 0
.Cols = 5
.AddItem str1
Do While Not ADOrs.EOF
str1 = ADOrs.Fields("联系人") + vbTab + ADOrs.Fields("QQ") + vbTab + ADOrs.Fields("手机") + vbTab + ADOrs.Fields("座机") + vbTab + ADOrs.Fields("出生日期")
.AddItem str1
ADOrs.MoveNext
Loop
End With


End Sub

怎么办呢

搜索更多相关主题的帖子: Microsoft 实时 Dim Sub strAccess 
2006-10-21 20:01
purana
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:广东-广州
等 级:版主
威 望:66
帖 子:6039
专家分:0
注 册:2005-6-17
得分:0 
Dim ADOcn As New Connection
你已经实例化了Adocn了...
If ADOcn Is Nothing Then

ADOcn.Open strAccess

End If
而这里..你又判断是否为Nothing...显然是不等..所以不打开数据库....那你ADOrs.ActiveConnection = ADOcn这句..就当然有问题了..

我的msn: myfend@
2006-10-21 20:04
jmasm
Rank: 1
等 级:新手上路
威 望:1
帖 子:368
专家分:0
注 册:2006-9-24
得分:0 

Dim ADOcn As New Connection
Public Sub main()

Dim strAccess As String
strAccess = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\vbwork\个人电话管理系统\mydata.mdb;Persist Security Info=False"
ADOcn.Open strAccess

frmmain.Show
End Sub
我这样后,还是同样的错误呀
运行出错提示3001
我点调试
ADOrs.ActiveConnection = ADOcn 错误指向这句
我把鼠标指向ADOcn显示空值

2006-10-21 20:16
jmasm
Rank: 1
等 级:新手上路
威 望:1
帖 子:368
专家分:0
注 册:2006-9-24
得分:0 
搞定了

郁闷呀
居然是dim跟public的问题
原来是模块中的声明出了问题
后面访问不到
万分感谢purana姐姐
2006-10-21 20:21
purana
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:广东-广州
等 级:版主
威 望:66
帖 子:6039
专家分:0
注 册:2005-6-17
得分:0 
在Module里的代码..
Option Explicit
Public conn As New ADODB.Connection

Public Sub Main()
Dim constring As String
constring = "Provider=Microsoft.Jet.OleDb.4.0;Data Source = D:\mdb\Northwind.mdb"
conn.Open constring
Form1.Show
End Sub

在Form1里的代码.
Option Explicit

Private Sub Form_Load()
Dim rs As New ADODB.Recordset
rs.ActiveConnection = conn
rs.CursorLocation = adUseClient
rs.Open "select * from orders"
MsgBox rs.RecordCount
End Sub

我是测试成功的...


我的msn: myfend@
2006-10-21 20:30



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-97845-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018900 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved