请教各位大神!数据库有数据,代码没写错,为什么会Adodc1.Recordset.RecordCount=0 ?
用vb6.0写用户管理窗体,
“注册用户”运行正常,注册了一个名叫"lucy
"的用户,然后点击“删除现有用户”进行测试“删除”的运行情况。
可为什么Adodc1.Recordset.RecordCount=0呢?
提示"当前数据库没有可删除的用户信息"。
查看SQL的数据表却可以看到lucy的数据,为什么无法删除lucy用户呢?
'删除现有用户的确定事件
Private Sub CmdSure2_Click()
rtn = SetWindowPos(Me.hwnd, -2, 0, 0, 0, 0, 3) '取消置前
'禁止删除当前用户
If Combo1.Text = Name1 Then
MsgBox "不能删除当前用户", vbInformation, "系统提示"
Else
a = MsgBox("您确定要删除该用户吗?", vbCritical + vbOKCancel, "系统提示")
If a = vbOK Then
'查询数据库,并将结果放进Adodc1.RecordSource中
Adodc1.RecordSource = "select * from tb_enter where vchUserName = ' " & Combo1.Text & " ' "
Adodc1.Refresh '刷新
'语法没问题,但是不会执行到这一步,无法删除用户信息
MsgBox Adodc1.Recordset.RecordCount '查看记录集的记录条数
If Adodc1.Recordset.RecordCount > 0 Then
Adodc1.Recordset.Delete '删除记录集中的数据
Adodc1.Refresh
MsgBox "用户信息删除成功", vbExclamation, "系统提示"
Unload Me
Else
MsgBox "当前数据库没有可删除的用户信息"
End If
End If
End If
End Sub
还望各位大神不吝赐教呀!
根据你提供的代码和问题描述,可能出现这种情况的原因有以下几点:
SQL语句问题:在查询语句中可能存在语法错误或者查询条件不正确,导致无法正确查询到要删除的用户信息。可以检查SQL语句是否正确,也可以手动在数据库中查询是否存在该用户信息。
数据库连接问题:可能在连接数据库时出现了问题,导致无法正确获取数据库中的信息。可以检查数据库连接是否正确,以及数据库中信息是否能够正常调取。
记录集问题:可能是记录集没有正确定位到要删除的用户信息所在的记录,导致无法正确删除。可以检查记录集相关的代码逻辑,如查询语句、过滤条件等是否正确。
针对以上问题,可以按照以下步骤依次排查:
检查SQL语句是否正确,可以在SQL Server Management Studio或其他数据库管理软件中手动执行SQL查询语句,查看是否能够正确返回对应用户信息。
检查数据库连接是否正确,并且能够正常进行数据调取。可以尝试修改连接字符串或者检查数据库的权限配置等。
检查记录集相关的代码逻辑,如查询语句、过滤条件等是否正确,可以通过记录集的MoveNext等方法尝试定位到要删除的用户信息所在的记录并删除。
希望这些信息能够对你有所帮助。