vb 找到当前信息的上一条信息显示在文本框中.

2024-11-20 00:22:18
推荐回答(3个)
回答1:

在第1行命令与第2行命令之间,加:
Adodc1.Refresh
试试

另外,在设计时,直接将文本框绑定到数据表的字段:
方法就是,设置文本框的2个属性:
先设置:DataSource 属性
后设置:DataField 属性
那样的话,就不需要语句:
Text3.Text = Adodc1.Recordset.Fields("姓名").Value
Text4.Text = Adodc1.Recordset.Fields("职工号").Value
Text5.Text = Adodc1.Recordset.Fields("性别").Value
Text6.Text = Adodc1.Recordset.Fields("年龄").Value
了.

回答2:

Adodc1.RecordSource = "select * from 人事库 where 姓名='" + Text2.Text + "'"
If Not Adodc1.Recordset.BOF Then
Adodc1.Recordset.MovePrevious '这里有问题,才从数据库里取的记录指针还在第一条那里,怎么还能把指针指向记录上一条呢。

Text3.Text = Adodc1.Recordset.Fields("姓名").Value
Text4.Text = Adodc1.Recordset.Fields("职工号").Value
Text5.Text = Adodc1.Recordset.Fields("性别").Value
Text6.Text = Adodc1.Recordset.Fields("年龄").Value
End If

If Adodc1.Recordset.BOF Then
Adodc1.Recordset.MoveLast
Text3.Text = Adodc1.Recordset.Fields("姓名").Value
Text4.Text = Adodc1.Recordset.Fields("职工号").Value
Text5.Text = Adodc1.Recordset.Fields("性别").Value
Text6.Text = Adodc1.Recordset.Fields("年龄").Value
End If

回答3:

Adodc1.RecordSource = "select * from 人事库 where 姓名='" + Text2.Text + "Order by '姓名'"
要带排序 你最后面引号多了
Adodc1.Recordset.MovePrevious
应该是
Adodc1.Recordset.Movefirst吧。。
Text3.Text = Adodc1.Recordset.Fields("姓名").Value
可以简化:
Text3.Text = Adodc1.Recordset.Fields!姓名