| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3755 人关注过本帖
标题:vb+access 程序修改密码
只看楼主 加入收藏
木合塔尔
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2017-3-27
结帖率:80%
收藏
已结贴  问题点数:20 回复次数:6 
vb+access 程序修改密码
我想做一个程序可一直不能修改密码,我刚开始学的vb,所以不知道怎么改下面的代码,求各位高手帮忙改一下!!!!!!(Set rs = Execute(txtsql, msgtext)就这里出问题啦,说子程序或函数未定义!!!!!!
Private Sub Command1_Click()
Dim conn As New ADODB.Connection
    Dim rs As New ADODB.Recordset
    Dim txtsql As String

conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\stu.mdb"
   
    txtsql = "Select * from 用户信息表 where username='" & Text1.Text & "'"
Set rs = Execute(txtsql, msgtext)
If rs.EOF Then
MsgBox "没有这个用户,请重新输入!", vbOKOnly
Exit Sub
End If
If Text3.Text <> Text4.Text Then
MsgBox "两次输入密码不一致!请重新输入.", vbOKOnly
Text2.Text = ""
Text3.Text = ""
Text4.Text = ""
Text2.SetFocus
Exit Sub
End If
If Text2.Text <> rs.Fields(1) Then
MsgBox "原密码输入不正确,请重新输入!", vbOKOnly
Text2.Text = ""
Text3.Text = ""
Text4.Text = ""
Text2.SetFocus
Else
If MsgBox("确定要更改密码吗?", vbYesNo + vbExclamation, "警告") = vbOK Then
txtsql = "update 用户信息表 set Pwd='" & Text3.Text & "' where username='" & Text1.Text & "'"
Set rs = ExecuteSQL(txtsql, msgtext)
MsgBox "更改成功!", vbOKOnly
Text2.Text = ""
Text1.Text = ""
Text3.Text = ""
Text4.Text = ""
Text1.SetFocus
txtsql.updata
Exit Sub
End If
Exit Sub
End If

End Sub
2017-04-01 17:52
xzlxzlxzl
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:湖北
等 级:贵宾
威 望:125
帖 子:1091
专家分:5825
注 册:2014-5-3
收藏
得分:7 
sql语句修改如下试试:
txtsql = "update 用户信息表 set Pwd='" & Text3.Text & "' from 用户信息表 where username='" & Text1.Text & "'"
2017-04-01 20:03
木合塔尔
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2017-3-27
收藏
得分:0 
回复 2楼 xzlxzlxzl
试过啦,还是不行,(Executesql) 子程序或函数未定义
2017-04-02 14:43
Artless
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:4211
专家分:28888
注 册:2009-4-8
收藏
得分:7 
Set rs = Execute(txtsql, msgtext)就这里出问题啦,说子程序或函数未定义!!!!!!

还是不行,(Executesql) 子程序或函数未定义


无知
2017-04-03 14:27
xzlxzlxzl
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:湖北
等 级:贵宾
威 望:125
帖 子:1091
专家分:5825
注 册:2014-5-3
收藏
得分:0 
Set rs = Execute(txtsql, msgtext)修改为Set rs = conn.Execute(txtsql)
实在不知道你Execute函数是怎么写的,msgtext是什么。conn.Execute方法就可以执行sql命令,返回的是记录集快照,不支持游标。
2017-04-03 17:38
ZHRXJR
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:125
帖 子:1034
专家分:5519
注 册:2016-5-10
收藏
得分:7 
程序代码:
Dim conn As New ADODB.Connection, rs As New ADODB.Recordset, txtsql As String       '数据库对象与记录集对象定义应该这样
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\stu.mdb;Persist Security Info=False"  ' 连接数据库
    txtsql = "Select * from 用户信息表 where username='" & Text1.Text & "'"
rs.Open txtsql, conn, 3, 2
If rs.EOF = True Then
MsgBox "没有这个用户,请重新输入!", vbOKOnly
rs.Close
conn.Close
Exit Sub
ElseIf Text2.Text <> rs!Pwd Then   '标号方式查询容易出错,使用字段名比较合理
MsgBox "原密码输入不正确,请重新输入!", vbOKOnly
Text2.Text = ""
Text3.Text = ""
Text4.Text = ""
Text2.SetFocus
rs.Close
conn.Close
Exit Sub
End If
rs.Close
If Text3.Text <> Text4.Text Then
MsgBox "两次输入密码不一致!请重新输入.", vbOKOnly
Text2.Text = ""
Text3.Text = ""
Text4.Text = ""
Text2.SetFocus
Exit Sub
End If
If MsgBox("确定要更改密码吗?", 33, "警告") = 1 Then
txtsql = "select * from 用户信息表 where Pwd='" & Text3.Text & "' and  username='" & Text1.Text & "'"
rs.Open txtsql, conn, 3, 2
rs!Pwd = Text3.Text   '搞不清你的密码字段是不是叫 Pwd,如果是就没有问题,如果不是修改正确的密码字段名称
rs.Update
rs.Close
conn.Close
MsgBox "密码修改成功!"
End If

用我的数据库调试了,没有问题,上面的代码已经修改为你的数据库与数据表了。

请不要选我!!!
2017-04-04 13:41
i74126
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2015-11-11
收藏
得分:0 
回复 6楼 ZHRXJR
感谢,学习了!
2017-04-14 12:45
快速回复:vb+access 程序修改密码
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018769 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved