返回列表 发帖
别用eof.用recordcount..

TOP

Private Sub cmdOK_Click()
    Dim mrc As ADODB.Recordset
    Dim strmsg As String
    txtSQL = "select count(*) from userinfo where UID='" & Trim(txtUserName.Text) & "' and PWD="'" & Trim(txtPassword.Text) & '"
    Set mrc = ExecuteSQL(txtSQL, strmsg)
    Dim return_count
    return_count=mrc.Fields(0)
   if return_count=0 then
      MsgBox " 用户名不存在或密码错误!", vbExclamation + vbOKOnly, "警告"
  end if
    OK = True
    frmMain.Show
    Unload Me
End Sub


试下吧..

根据你写的改的..


[ 本帖最后由 .lemon. 于 2007-6-28 15:43 编辑 ]
其实时间总是那么快

TOP

不对..

VB声明变量是Dim吧?

= =

常时间不用都忘光了..改了下


[ 本帖最后由 .lemon. 于 2007-6-28 15:25 编辑 ]
其实时间总是那么快

TOP

嗯, 是有问题。。

TOP

头晕了..

VB的语法什么我真不大记得路 反正就是


txtSQL = "select count(*) from userinfo where UID='" & Trim(txtUserName.Text) & "' and PWD='" & Trim(txtPassword.Text) & "'"


这段SQL执行的结果,算出同时符合你文本框输入的UserName和Password 的值的数量..

它返回在纪录集里的,就一条纪录:符合结果的数量,如果这个数量=0说明没有这条数据..登陆失败..


你原来PW条件后面还有点问题.. 第一个等号后面不应该用两个双引号. 改了下.


[ 本帖最后由 .lemon. 于 2007-6-28 15:36 编辑 ]
其实时间总是那么快

TOP

原帖由 .lemon. 于 2007-6-28 14:58 发表


8区别的..自己开查询分析器试下不就知道了..



字段名和表名怎么会不区分大小写呢.. 又不是SQL命令

你userinfo 这个表里的UID字段是大写的话

Select uid form userinfo 这句在分析器里是报错的..

TOP

虽然各位尚未解决,但依然感谢各位的热心,暂奉上微薄积分。。

如果哪位朋友机器上恰好装了VB+SQL,能够帮忙调试,那就大好了。。

TOP




你真的去试了么?
其实时间总是那么快

TOP

        Dim mrc As ADODB.Recordset
        Dim strmsg As String
        txtSQL = "select count(*) from userinfo where UID='" & Trim(txtUserName.Text) & "' and PWD='" & Trim(txtPassword.Text) & "'"
        mrc = ExecuteSQL(txtSQL, strmsg)
        Dim return_count
        return_count = mrc.Fields(0)
        If return_count = 0 Or return_count = "0" Then
            MsgBox(" 用户名不存在或密码错误!", vbExclamation + vbOKOnly, "警告")
        End If
        OK = True
        frmMain.Show()
        Unload(Me)



再试下.. 应该没问题的啊..
其实时间总是那么快

TOP

原帖由 .lemon. 于 2007-6-28 15:47 发表



你真的去试了么?

可能试的方法有问题吧,能把具体问题说明白吗。。- -

TOP


我22楼是对20楼讲的- -||||

楼上再试下我23楼的代码


[ 本帖最后由 .lemon. 于 2007-6-28 15:58 编辑 ]
其实时间总是那么快

TOP

原帖由 .lemon. 于 2007-6-28 15:56 发表

我22楼是对20楼讲的- -||||

楼上再试下我23楼的代码

编译错误:
属性的使用无效

TOP

报在这句上?

If return_count = 0 Or return_count = "0" Then
其实时间总是那么快

TOP

原帖由 .lemon. 于 2007-6-28 15:47 发表



你真的去试了么?



恩...






改了语句里的 C_Kno 字段为小写的 C_kno 就报错
SqlServer2000 和 SqlServer2005 都一样

TOP

LZ  那个错我帮你改了

但是完全编译发现错误无数

这东西哪载来的?

TOP

返回列表