小弟今天做VB连接ACCESS数据库时,在做登陆界面时,老是报错,请各位帮帮忙 
程序: 
Dim cnn As ADODB.Connection '数据库连接 
Dim rst As ADODB.Recordset '记录集 
Dim mrc As ADODB.Recordset '记录集 
Dim sTokens() As String '分取SQL语言 
Dim txtSQL As String '存放SQL语言 
Dim MsgText As String '存放返回信息 Public Function ExecuteSQL(ByVal SQL As String, MsgString As String) As ADODB.Recordset 
On Error GoTo ExecuteSQL_Error 
conn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + App.Path & " \DataBase.mdb" + ";Persist Security Info=false" 
sTokens = Split(SQL) 
Set cnn = New ADODB.Connection 
cnn.Open conn '打开连接 
If InStr("INSERT,DELETE,UPDATE", UCase$(sTokens(0))) Then 
cnn.ExecuteSQL 
MsgString = sTokens(0) & "query successful" 
Else 
Set rst = New ADODB.Recordset 
rst.Open Trim$(SQL), cnn, adOpenKeyset, adLockOptimistic 
Set ExecuteSQL = rst 
MsgString = "查询到" & rst.RecordCount & "条记录" 
End If 
ExecuteSQL_Exit: 
Set rst = Nothing 
Set cnn = Nothing 
Exit Function 
ExecuteSQL_Error: 
MsgString = "查询错误:" & Err.Description 
Resume ExecuteSQL_Exit 
End Function Dim miCount As Integer 
miCount = 0 
Private Sub Form_Load() End Sub 
Private Sub confirm_Click() 
Dim txtSQL As String 
Dim mrc As ADODB.Recordset 
Dim MsgText As String 
If Trim(userID.Text = "") Then 
MsgBox "没有这个用户,请重新输入用户名!", vbOKOnly + vbExclamation, "警告" 
userID.SetFocus 
Else 
txtSQL = "select * from account where userID='" & userID.Text & "'" 
Set mrc = ExecuteSQL(txtSQL, MsgText) 
If mrc.EOF = True Then////////////////错误部分//// 
MsgBox "没有这个用户,请重新输入用户名!", vbOKOnly + vbExclamation, "警告" 
userID.SetFocus 
userID.Text = "" 
Else 
If Trim(mrc.Fields(1)) = Trim(PWD.Text) Then 
mrc.Close 
Me.Hide 
userID = Trim(userID.Text) 
PWD = Trim(PWD.Text) 
main.Show 
Else 
MsgBox "输入密码不正确,请重新输入!", vbOKOnly + vbExclamation, "警告" 
PWD.SetFocus 
PWD.Text = "" 
End If 
End If 
End If 
miCount = miCount + 1 
If miCount = 3 Then 
Me.Hide 
End If 
Exit Sub 
End Sub 我按F8时,报错的地方是mrc.EOF=true 
我看了一些同样错误的帖子,是说没有实例化,MRC要NEW一下,我也改了,也不行,还有帖子说我引用有问题,但我的引用都打上了,没有错误,我自己觉得好像是没有读到数据库中的USERID项,但我检查过数据库了,都有记录的,不是空数据库.小弟这个程序比较急,求各位指点下!谢谢!