登录问题??请帮忙

purerain 2004-05-04 06:20:44
本人刚刚学VB,我想做一个登录框,在text1中输入ID,text2中输入密码。
然后把他们和access中数据库中的assistant表中的ID和密码比较,为什么运行时会有错误?

Private Sub Command1_Click()
Dim cnn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim StrSql As String
cnn.Open "provider=Microsoft.Jet.OLEDB.4.0;data source=" & App.Path & "\libary1.mdb"
rs.Open "select 1 from [assistant] where ID='" & Text1.Text & "' and 密码='" & Text2.Text & "'", cnn, adOpenKeyset, adLockBatchOptimistic
If rs.EOF Then
MsgBox "不存在此用户名与密码"
Else
'登录
End If
rs.Close
End Sub


...全文
48 4 打赏 收藏 举报
写回复
4 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
purerain 2004-05-05
谢谢楼上的大哥啊
  • 打赏
  • 举报
回复
lizifang 2004-05-04
Private Sub cmdOK_Click(Cancel As Boolean)

Dim conn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim sql
Dim ConnectString As String
ConnectString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\libary1.mdb;Persist Security Info=False;Jet OLEDB"
conn.Open ConnectString

sql = "select * from assistant where ID='" & text1.text & "' and 密码='" & text2.Text & "'"
rs.Open sql, conn
If rs.EOF Then
MsgBox "用户名或密码错,请重新输入!", , "登录"
Else

Unload Me
MDIForm1.Show
End If
rs.Close

End Sub
  • 打赏
  • 举报
回复
饮水需思源 2004-05-04
'这样试试:
Private Sub Command1_Click()
Dim cnn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim StrSql As String
cnn.Open "provider=Microsoft.Jet.OLEDB.4.0;data source=" & App.Path & "\libary1.mdb"
if rs.state=adstateopen then rs.close
rs.Open "select * from assistant where [ID]='" & Text1.Text & "' and 密码='" & Text2.Text & "'", cnn, adOpenKeyset, adlockreadonly
If rs.recordcount=0 Then
MsgBox "不存在此用户名与密码"
Else
'登录
End If
rs.Close
End Sub
  • 打赏
  • 举报
回复
lsftest 2004-05-04
rs.Open "select * from [assistant] where ID='" & Text1.Text & "' and 密码='" & Text2.Text & "'", cnn, adOpenKeyset, adLockBatchOptimistic

另外检查id、密码字段的数据类型,如果是数值类型要把对应的单引号去掉。。。
  • 打赏
  • 举报
回复
相关推荐
发帖
数据库(包含打印,安装,报表)
加入

1199

社区成员

VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
申请成为版主
帖子事件
创建了帖子
2004-05-04 06:20
社区公告
暂无公告