VB实时错误'3705'

来源:百度知道 编辑:UC知道 时间:2024/09/21 20:19:36
说的是对象打开时不允许操作
报错的是
cn.Open "Provider=Microsoft.Jet.OLEDB.3.51;Data Source=" & App.Path & "\bs.mdb;Persist Security Info=False"

代码如下:

Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim sum As Integer, sql As String

Private Sub Command1_Click()
Form2.Hide
Form3.Show
End Sub

Private Sub Command2_Click()
Form2.Hide
Form4.Show
End Sub

Private Sub Command3_Click()
Form2.Hide
Form5.Show
End Sub

Private Sub Command4_Click()
sum = 0

cn.Open "Provider=Microsoft.Jet.OLEDB.3.51;Data Source=" & App.Path & "\bs.mdb;Persist Security Info=False"

If List1.ListCount <> 0 Then
j = 0
Do While j < List1.ListCount
sql = "Select * From 麦当劳 Where (食物名称 = '" & List1.List(j) & "' )"
rs.Open sql, cn, 1, 3
If rs.EOF Then<

看提示的意思可能是你多次打开该数据库,也就是你有些地方打开后,直接退出没有关闭连接(比如某些条件之后就直接Exit sub了),可以尝试在退出Sub之前关掉数据库。还是有问题可以给我发个Email:cnbubble@163.com
把程序附上

可怜的兄弟,程序交掉了没?
对象打开应该就是数据对象没有关闭,而被再次打开的情况,可以用断点调试出来
在你程序中,有好多处直接exit sub,而在此前你没有关闭数据连接;而你在下次按钮时却又再次请求数据连接,可能就是这原因了。
你可以尝试在每次退出时,释放数据连接。