VB怎么获取数据库里的记录值

我想做个找回密码之类的程序,数据库里存储了用户名,密码,密码保护问题和答案,怎样通过密码保护的问题和答案查询到用户的密码呢?VB通过输入的账号和密码保护问题及答案查询到了... 我想做个找回密码之类的程序,数据库里存储了用户名,密码,密码保护问题和答案,怎样通过密码保护的问题和答案查询到用户的密码呢?VB通过输入的账号和密码保护问题及答案查询到了后,怎么讲该项的密码显示出来呢?我很不解,似乎VB只能查询有没有,并不能获取记录的值,有谁知道,帮帮我吧!感激不尽! 展开
 我来答
迷今恋古
推荐于2017-10-07 · TA获得超过238个赞
知道答主
回答量:83
采纳率:75%
帮助的人:24.9万
展开全部
例如一个表INFO的字段有:user,password,question,answer

Dim cn As New ADODB.Connection '定义数据库的连接
Dim rs As New ADODB.Recordset
''''
这里连接数据库
''''
'查询语句
SQL="select * from INFO where user='账号"
rs.open SQL
rs.movefirst
pw=rs.Fields(1).Value '''这就是密码
或者
pw=rs.Fields("password").Value '''这就是密码
zdingyun
2010-06-14 · 知道合伙人软件行家
zdingyun
知道合伙人软件行家
采纳数:15429 获赞数:48172
1982年上海业余工业大学化工系毕业 现退休

向TA提问 私信TA
展开全部
只要你能获得记录,就能获取其各字段的值.给段演示代码:
Dim cn As New ADODB.Connection '定义数据库的连接
Dim rs As New ADODB.Recordset
Dim sql As String
Dim l As Integer
Dim i As Integer
Dim fieldName() As String
sql = "select * from jishijilu where 账号='jason19905
'"
cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\wd.mdb;Persist Security Info=False"
cn.Open
rs.CursorLocation = adUseClient
rs.Open sql, cn, adOpenDynamic, adLockOptimistic
Set DataGrid1.DataSource = rs
For i = 0 To rs.Fields.Count - 1
Debug.Print rs.Fields(i).Value
Next
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
可以叫我表哥
推荐于2017-09-10 · 知道合伙人数码行家
可以叫我表哥
知道合伙人数码行家
采纳数:25897 获赞数:1464975
2010年毕业于北京化工大学北方学院计算机科学与技术专业毕业,学士学位,工程电子技术行业4年从业经验。

向TA提问 私信TA
展开全部
VB获取数据库里的记录值:
string selectsql="select * from admin where username='"+this.username+"'";

SqlDataAdapter ad=new SqlDataAdapter(selectsql,con);

DataSet ds=new DataSet(); //存放于内存中的数据缓存

ad.Fill(ds,"admin"); //管理员权限

this.Lable1.Text=ds.Table[0].Row[0].["user_id"].tostring;

this.DataBinder();
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
leolemonlz
2010-06-14
知道答主
回答量:15
采纳率:0%
帮助的人:20.8万
展开全部
这段代码是我之前做东西写的,
你参考一下,就是从数据库里选择一些东西输出到前台页面

Private myConn As New ADODB.Connection
Private myRecord As New ADODB.Recordset
Dim mySql(1 To 5) As String '存储调用SQL语句
On Error Resume Next '这句可有可无~
Set myConn = New ADODB.Connection '连接数据库
myConn.ConnectionString = "provider=SQLOLEDB.1;Persist Security info = false;user id=sa;initial catalog=数据库名;data source=(local)"
myConn.Open
Set myRecord = New ADODB.Recordset

mySql(1) = "select * from T_zaihe where wy_fx=" & Val(wyfx) & " and n= (select min(n) from T_zaihe where n>=" & Val(Trim(Text_gz.Text)) & ") ;"
‘引号里的是条件和变量,大概就是这个格式,T_zaihe是数据库表,wy_fx是vb里的变量,wyfx是数据库表里的变量

myRecord.Open mySql(1), myConn, adOpenDynamic, adLockBatchOptimistic, adCmdText
Text1.Text = myRecord.Fields("num").Value
’num是数据库表里的属性,这句是在vb中显示num数据
myRecord.Close
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lanhai651000
2010-06-14 · TA获得超过399个赞
知道小有建树答主
回答量:312
采纳率:0%
帮助的人:0
展开全部
adoQuery数据库控件名
GetLastTestNO 属性值存放变量
查询语句:
adoQuery.RecordSource = "select * from " +查询属性等
查询数据库语句之后:
adoQuery.Refresh
If adoQuery.Recordset.RecordCount = 0 Then
Else //查询结果有记录
//判断查询到的记录中,所要找的属性是否空值
If Not IsNull(adoQuery.Recordset.Fields(属性)) Then
If adoQuery.Recordset.RecordCount > 1 Then
adoQuery.Recordset.MoveLast
//将对应的属性值赋值给变量,查询到多个记录则显示最后一个记录
GetLastTestNO = adoQuery.Recordset.Fields(dbInjNO)
Else
//只有一个记录
GetLastTestNO = adoQuery.Recordset.Fields(dbInjNO)
End If
Else
GetLastTestNO ="" //无记录
End If
End If
将GetLastTestNO 显示在控件上即可得到所要的属性密码值
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式