工程->引用->Microsoft ActiveX Data Objects 2.X LibraryOption ExplicitPrivate Rs As New ADODB.Recordset Private Conn As New ADODB.ConnectionPrivate Sub Form_Load() Dim strConn As String
还是拜托阿,这是我的原代码,他提示我 “实时错误‘3705‘ 对象打开时,不允许关闭”,请问怎么办啊谢谢! Private Sub cmdOK_Click() Dim strConn As String strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\zuogao\db\zuogao.mdb;Persist Security Info=False" Conn.CursorLocation = adUseClient '错误停留在这一行,拜托高手们,帮忙啊 Conn.Open strConn If Rs.State <> adStateClosed Then Rs.Close
UserName = "" If Trim(txtusername.Text = "") Then MsgBox "没有这个用户,请重新输入用户名!", vbOKOnly + vbExclamation, "警告" txtusername.SetFocus Else Rs.Open "select * from users where UserName = '" & txtusername.Text & "'" If Rs.EOF = True Then MsgBox "没有这个用户,请重新输入用户名!", vbOKOnly + vbExclamation, "警告" txtusername.SetFocus Else If Trim(Rs.Fields(8)) = Trim(txtpassword.Text) Then OK = True Rs.Close Me.Hide Form2.Show UserName = Trim(txtusername.Text) Else MsgBox "输入密码不正确,请重新输入!", vbOKOnly + vbExclamation, "警告" txtpassword.SetFocus txtpassword.Text = "" End If End If End If
Set Rs = New ADODB.Recordset
Connstring = "Provider=Microsoft.Jet.OLEDB.4.0;Data source =" & App.Path & "\WhiteBook.mdb"
MyCon.ConnectionString = Connstring
MyCon.Open
Private Conn As New ADODB.ConnectionPrivate Sub Form_Load()
Dim strConn As String
' 连接数据库的字符串
' 连接带密码的数据库,直接在连接符后面加上Jet OLEDB:DataBase Password='您的密码'
' 连接Access97数据库需要使用Jet.OLEDB.3.5,Access2K和以上数据库使用Jet.OLEDB.4.0
strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\test.mdb;Persist Security Info=False"
' 使用客户端数据游标
Conn.CursorLocation = adUseClient
' 打开Access的连接
Conn.Open strConn
' 如果RecordSet的状态不是关闭状态,则关闭Recordset
If Rs.State <> adStateClosed Then Rs.Close
' Recordser打开表People
Rs.Open "Select * from People", Conn, adOpenKeyset, adLockOptimistic
' 报告出 一共多少笔数据,测试是否存在数据
' MsgBox Rs.RecordCount
' 绑定进DataGrid
Set DataGrid1.DataSource = Rs
End Sub
如你的程序存在e:\vb
则app.path 返回 e:\vb
如果你的数据库放在e:\vb\data下则需要用 app.path & "\data"
Private Sub cmdOK_Click()
Dim strConn As String
strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\zuogao\db\zuogao.mdb;Persist Security Info=False"
Conn.CursorLocation = adUseClient '错误停留在这一行,拜托高手们,帮忙啊 Conn.Open strConn
If Rs.State <> adStateClosed Then Rs.Close
UserName = ""
If Trim(txtusername.Text = "") Then
MsgBox "没有这个用户,请重新输入用户名!", vbOKOnly + vbExclamation, "警告"
txtusername.SetFocus
Else
Rs.Open "select * from users where UserName = '" & txtusername.Text & "'"
If Rs.EOF = True Then
MsgBox "没有这个用户,请重新输入用户名!", vbOKOnly + vbExclamation, "警告"
txtusername.SetFocus
Else
If Trim(Rs.Fields(8)) = Trim(txtpassword.Text) Then
OK = True
Rs.Close
Me.Hide
Form2.Show
UserName = Trim(txtusername.Text)
Else
MsgBox "输入密码不正确,请重新输入!", vbOKOnly + vbExclamation, "警告"
txtpassword.SetFocus
txtpassword.Text = ""
End If
End If
End If