为啥总提示实时错误3709连接无法用于执行此操作。在此上下文中它可能已被关闭或无效.要怎么改?
OptionExplicitPublicConnAsADODB.Connection'数据库连接对象PublicmRsAsNewADODB.Recordset'记录集Pu...
Option Explicit
Public Conn As ADODB.Connection '数据库连接对象
Public mRs As New ADODB.Recordset '记录集
Public Connstr As String '数据库连接字符串
Function ConnMdb() '连接数据库
On Error GoTo Myerr
Set Conn = New ADODB.Connection
'Connstr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source='" & App.Path & "\mydata\学员信息.mdb'"
Connstr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source='" & App.Path & "C:\Users\Administrator\Desktop\111.accdb'"
'连接Access 2007 数据库的字符串
Conn.Open Connstr
'mRs.Open "select * from 首缸工艺", Conn, 1, 3
Exit Function
Myerr:
Set Conn = Nothing
Conn.Close
MsgBox "数据库链接失败," & Err.Description
Err.Clear
End Function
Private Sub 查询工艺_Click()
mRs.Open "select * from ni", Conn, 1, 3
Do While Not mRs.EOF
here:
If mRs("首缸号") = Text1.Text Then
List1.Clear
List1.AddItem mRs("主轴转速")
List2.Clear
List2.AddItem mRs("入布张力")
List3.Clear
List3.AddItem mRs("导布速度")
List4.Clear
List4.AddItem mRs("覆针速度")
List5.Clear
List5.AddItem mRs("起针速度")
List6.Clear
List6.AddItem mRs("出布张力")
Else
mRs.MoveNext
GoTo here
End If
Loop
MsgBox "输入的缸号不存在", vbOKOnly, "查询结果"
End Sub 展开
Public Conn As ADODB.Connection '数据库连接对象
Public mRs As New ADODB.Recordset '记录集
Public Connstr As String '数据库连接字符串
Function ConnMdb() '连接数据库
On Error GoTo Myerr
Set Conn = New ADODB.Connection
'Connstr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source='" & App.Path & "\mydata\学员信息.mdb'"
Connstr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source='" & App.Path & "C:\Users\Administrator\Desktop\111.accdb'"
'连接Access 2007 数据库的字符串
Conn.Open Connstr
'mRs.Open "select * from 首缸工艺", Conn, 1, 3
Exit Function
Myerr:
Set Conn = Nothing
Conn.Close
MsgBox "数据库链接失败," & Err.Description
Err.Clear
End Function
Private Sub 查询工艺_Click()
mRs.Open "select * from ni", Conn, 1, 3
Do While Not mRs.EOF
here:
If mRs("首缸号") = Text1.Text Then
List1.Clear
List1.AddItem mRs("主轴转速")
List2.Clear
List2.AddItem mRs("入布张力")
List3.Clear
List3.AddItem mRs("导布速度")
List4.Clear
List4.AddItem mRs("覆针速度")
List5.Clear
List5.AddItem mRs("起针速度")
List6.Clear
List6.AddItem mRs("出布张力")
Else
mRs.MoveNext
GoTo here
End If
Loop
MsgBox "输入的缸号不存在", vbOKOnly, "查询结果"
End Sub 展开
2个回答
展开全部
Connstr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source='" & App.Path & "C:\Users\Administrator\Desktop\111.accdb'"
'这个SQL语句不正确, App.Path 指的是程序根目录,后面怎么又是绝对路径?
Connstr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & App.Path & "\111.accdb;Jet OLEDB:Database Password=;"
'如果 111.accdb 数据库文件在程序根目录,使用上面语句
Connstr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\Administrator\Desktop\111.accdb;Jet OLEDB:Database Password=;"
'如果 111.accdb 数据库文件不在程序根目录,使用上面语句
Conn.Open Connstr '这个语句是打开数据库连接的,应该没有问题。
如果有问题可以再回复。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询