vb 如何读取数据库一行数据
数据库IDnamepass1aaa1235bbb321我要读取一行数据要怎么做,分别要把ID读到text1,name>text2,pass>text3.点按钮就读取下一行...
数据库
ID name pass
1 aaa 123
5 bbb 321
我要读取一行数据要怎么做,分别要把ID 读到text1,name>text2,pass>text3.
点按钮就读取下一行。由于ID不是连续的,不知道怎么读。 这个要怎么做呢? 展开
ID name pass
1 aaa 123
5 bbb 321
我要读取一行数据要怎么做,分别要把ID 读到text1,name>text2,pass>text3.
点按钮就读取下一行。由于ID不是连续的,不知道怎么读。 这个要怎么做呢? 展开
3个回答
展开全部
不知道你数据表中那一列数据是什么类型的数据,所以我全部按字串来处理。
首先声明一个数组,和即将用来计数的数字:
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 '最后记得要关闭数据库连接
数据存入数组很简单,其实难点是连接数据库,从数据库拿数据,这难点原理简单,但因为格式,数据类型等问题,很容易出错。
以上,数据到了数组,你应该会操作了吧。其实建议直接对从数据库返回的结果进行操作,不需要用数组的。
首先声明一个数组,和即将用来计数的数字:
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 '最后记得要关闭数据库连接
数据存入数组很简单,其实难点是连接数据库,从数据库拿数据,这难点原理简单,但因为格式,数据类型等问题,很容易出错。
以上,数据到了数组,你应该会操作了吧。其实建议直接对从数据库返回的结果进行操作,不需要用数组的。
展开全部
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("家庭住址") = ""
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("家庭住址") = ""
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
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
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
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询