快来帮忙,这段程序哪出错了!!!

ljhcnln 2000-12-21 07:39:00
Private Sub cmdOK_Click()
Dim rs As Recordset
Dim db As Database
Dim ws As Workspace
Set db = OpenDatabase("C:\Program Files\Microsoft Visual Studio\VB98\销售管理\userlist.mdb")
Set rs = db.OpenRecordset("select * from userlist where username='& txtusername.text &'", dbOpenDynaset)
If rs.NoMatch Then
MsgBox "无此用户"
Else
If rs.fields("password") = txtPassword.Text Then
LoginSucceeded = True
Me.Hide
MsgBox "登录成功"
Else
MsgBox "口令错误"
End If
End If
End Sub
提示,无此用户,请各位大侠指教
...全文
105 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
Wingsun 2000-12-22
  • 打赏
  • 举报
回复
错了错了,按照KK的就对了。
bruce_lii 2000-12-21
  • 打赏
  • 举报
回复
如果你的程序没写错的话,下面这句写错了:
Set rs = db.OpenRecordset("select * from userlist where username='& txtusername.text &'", dbOpenDynaset)
应该是
Set rs = db.OpenRecordset("select * from userlist where username='" & txtusername.text &"'", dbOpenDynaset)
少了引号,查找的是username为&txtusername.txt&的人,当然无此用户了
另外注意:如果txtusername.text中有'的话,要触发错误,所以,最好有”代替’,
应该是:
Set rs = db.OpenRecordset("select * from userlist where username=" & chr(34) & txtusername.text & chr(34), dbOpenDynaset)
zzh 2000-12-21
  • 打赏
  • 举报
回复
在打开数据库时,一般是通过ODBC来连接数据库,你这里面是直接打开数据库,要提供一个UID,PASSWORD,这里指的是访问数据库的用户和口令,如果没有的话,就不能连接数据库,可以在ODBC面板中建立一个用户DSN,设为TEST,用户与口令都无,,则打开数据库代码如下所示:
dim gv_db as ADODB.Connection
dim gv_rst as ADODB.Recordset
Dim strSql As String
strSql = "Provider=MSDASQL.1;Extended Properties='DSN=TEST;UID=sa;PWD=;WSID=ZZH;DATABASE=TEST"
Set GV_db = New ADODB.Connection
GV_db.Open strSql
Set GV_rst = New ADODB.Recordset
GV_rst.CursorLocation = adUseClient
GF_ConnectDatabase = True

7,765

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧