VB list读取access数据库中的一列并显示出来

'打开程序首先数据库连接Str=App.PathIfRight(Str,1)<>"\"ThenStr=Str&"\data"ElseStr=Str&"data"EndIf... '打开程序首先数据库连接
Str = App.Path
If Right(Str, 1) <> "\" Then
Str = Str & "\data"
Else
Str = Str & "data"
End If
Str = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & Str & "\shujuku.mdb" & ";Jet OLEDB:Database password=123"

'MSHFlexGrid1其次读取数据库内容
Db.Open Str
Set Rs = New ADODB.Recordset
Rs.CursorLocation = adUseClient
Rs.Open "SELECT * FROM LcPassWord", Db, adOpenDynamic, adLockOptimistic

If Rs.RecordCount > 0 Then
Set MSH.Recordset = Rs
End If
Db.Close
这是表格读取数据库的方式,现在是让list在数据库连接后,读取LcPassWord表内text1列的全部内容并显示在list里,请求高手帮忙啊!!!
MSH是MSHFlexGrid1简写
展开
 我来答
syx54
推荐于2016-06-28 · TA获得超过7378个赞
知道大有可为答主
回答量:6567
采纳率:83%
帮助的人:2746万
展开全部
这个有两种方法:
1:直接从Rst里读取数据,在Rst获得数据集合的时候
List1.Clear
rst.MoveFirst
Do While Not rst.EOF
List1.AddItem rst.Fields("text1") '这里把字段名修改成数据表里的实际字段名
rst.MoveNext
Loop

2:通过MSHFlexGrid1网格控件,向list添加数据

追问
高手你好,我用第一种方法,

rst.MoveFirst
Do While Not rst.EOF
List1.AddItem rst.Fields("text1") '这里把字段名修改成数据表里的实际字段名
rst.MoveNext
Loop
这样提示对象关闭时,不允许操作,改怎么办啊
我是放在数据库连接后面的
追答
这个要在你上面的代码里直接加:

If Rs.RecordCount > 0 Then
List1.Clear
rs.MoveFirst
Do While Not rs.EOF
List1.AddItem rs.Fields("text1") '这里把字段名修改成数据表里的实际字段名
rs.MoveNext
Loop
rs.MoveFirst
Set MSH.Recordset = Rs
End If
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式