小弟我的修改密码成功了 却没进入数据库 为什么 代码如下

我的修改密码成功了 却没进入数据库 为什么 代码如下DimStrSQLAsStringStrSQLselect用户名称,用户密码fr

我的修改密码成功了 却没进入数据库 为什么 代码如下
Dim   StrSQL   As   String
StrSQL   =   "select   用户名称,用户密码   from   yhxx   where   用户名称=   ' "   &   Trim(dcusename.Text)   &   " ' "
                If   RsModPwd.State   =   adStateClosed   Then
                        RsModPwd.Open   StrSQL,   DBCON,   adOpenKeyset,   adLockPessimistic,   adCmdText       '//打开记录集
                End   If
If   Trim(dcusename.Text)   <>   Empty   And   Trim(txnewpwd1.Text)   <>   Empty   And   Trim(txnewpwd2.Text)   <>   Empty   Then
            If   Trim(txnewpwd1.Text)   =   Trim(txnewpwd2.Text)   Then
                        If   RsModPwd.RecordCount   <>   0   Then                     '//判断记录集中的记录是否等于零
                                RsModPwd.Fields(1).Value   =   Trim(txnewpwd1.Text)
                                RsModPwd.Update                                                 '//更新记录集
                                MsgBox   "密码修改成功 ",   ,   "密码修改 "
                                RsModPwd.Close
                                Unload   Me
                        Else
                                MsgBox   "不存在用户名 ",   vbExclamation,   "验证失败 "
                                RsModPwd.Close
                        End   If
          Else
                  MsgBox   "两次密码输入不一致   ",   vbInformation,   "错误提示 "
          End   If
Else
        MsgBox   "用户名及密码框有空选项   ",   vbInformation,   "错误提示 "
     
End   If

[解决办法]
If Trim(txnewpwd1.Text) = Trim(txnewpwd2.Text) Then
If RsModPwd.RecordCount <> 0 Then '//判断记录集中的记录是否等于零

在这里好像少了用户名的查找定位,你下面的语句只是将第一条记录的密码这字段修改

RsModPwd.Fields(1).Value = Trim(txnewpwd1.Text)
RsModPwd.Update '//更新记录集

[解决办法]


直接用UPDATE语句不好吗?比如:

Dim StrSQL As String
Dim i as integer

StrSQL = "update yhxx set 用户密码= ' "& Trim(txnewpwd1.Text) & " ' where 用户名称= ' " & Trim(dcusename.Text) & " ' "

DBCON.execute strsql,i
if i> 0 then msgbox "密码修改成功 ", , "密码修改 "

其中i返回execute方法所影响的行数