vb 如何读取数据库一行数据

数据库
ID name pass
1 aaa 123
5 bbb 321

我要读取一行数据要怎么做,分别要把ID 读到text1,name>text2,pass>text3.
点按钮就读取下一行。由于ID不是连续的,不知道怎么读。 这个要怎么做呢?

  不知道你数据表中那一列数据是什么类型的数据,所以我全部按字串来处理。
  首先声明一个数组,和即将用来计数的数字:
  dim nums() as string  Dim i As Integer = 0  mycon.open '然后,连接数据库,按你的声明来:  dim mycom as new sqlcommand("select * from 你要读取数据的表", mycon)'接下来,声明一个执行数据库语句命令的com:  '然后,对数据库返回的结果进行操作(一般会将执行结果存放起来,再操作,我这里省去了存放这步):With mycom.ExecuteReader() '对返回的结果,即查询到的表进行操作 If .HasRows Then '判断是否有数据,有数据就进入下面进行读取 Do While .Read '读取一行数据 If Not (String.IsNullOrEmpty(.GetString(0))) Then '检查表列的数据是否为空,不为空就进入下面,进行保存。这里要说下getstring这个,是读取某列数据中的字串,如果该列数据不是字串,那么需要用getvalue(0),0代表该列在表中的位置,从0开始,即0表示第一列。 ReDim Preserve nums(i) '重置数组大小,即为即将要保存的数据准备一个位置 nums(i) = .GetString(0) '将数据放入到数组中 i = i + 1 '循环,直到结束    End If   Loop End If End Withmycon.close '最后记得要关闭数据库连接
  数据存入数组很简单,其实难点是连接数据库,从数据库拿数据,这难点原理简单,但因为格式,数据类型等问题,很容易出错。

  以上,数据到了数组,你应该会操作了吧。其实建议直接对从数据库返回的结果进行操作,不需要用数组的。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-07-14
Dim sql As String
sql = "select * from Teacher"
'这句有问题,肯定是修改第一行数据,应该是
sql = "select * from Teacher Order BY id Desc"
Set rs = exesql(sql)
’在这里必须添加下面的语句:
rs.AddNew '新增数据
rs.Fields("管理员姓名") = Trim(Text1.Text)
rs.Fields("工号") = Trim(Text2.Text)
rs.Fields("管理员密码") = Trim(Text19.Text)
rs.Fields("性别") = Trim(Text3.Text)
rs.Fields("联系方式") = Trim(Text4.Text)
rs.Fields("家庭住址") = Trim(Text5.Text)
rs.Update
rs.Close

另外,我认为以下语句没有任何意义,不如删除:
rs.Fields("管理员姓名") = ""
rs.Fields("工号") = ""
rs.Fields("管理员密码") = ""
rs.Fields("性别") = ""
rs.Fields("联系方式") = ""
rs.Fields("家庭住址") = ""
第2个回答  2014-09-19
Set db = OpenDatabase(App.Path + "\" + "数据库名")
s = "select * from 表名"
Set dy = db.CreateDynaset(s)

Do Until dy.EOF
text1 = dy.Fields(0).Value
text2 = dy.Fields(1).Value
text3 = dy.Fields(2).Value
dy.MoveNext
Loop本回答被提问者采纳