VB里Recordset在DataGrid中显示SQL内容的问题

环境说明:三个数据源。ACCESS.ORACLE。SQLACCESS和ORACLE都已经能只通过rs.Recordset和datagrid进行绑定显示和MSHFlexGr... 环境说明:
三个数据源。ACCESS .ORACLE 。SQL

ACCESS和ORACLE都已经能只通过rs.Recordset和datagrid进行绑定显示
和MSHFlexGrid绑定也都能显示。
两个区别我知道。ORALCE可以不加游标。ACCESS需要加游标

不过在SQL里RS已经成功讲到记录集。也可以绑定MSHFLEXGRID显示 ,datagrid就显示不了。不管加不加游标。不管是CONN的游标。还是RS的游标加了都不行。
DEBUG.PRING里已经可以看到。

问题
如果让RS里的内容显示到datagrid里。
部分代码如下:

If conn.State = 0 Then
MsgBox "数据库未连接成功,请检查数据库是否开启,此电脑是否前台", vbOKOnly, "连接失败"
Else
conn.CursorLocation = adUseClient
rs.ActiveConnection = conn
rs.CursorLocation = adUseClient

rs.Open "select * from pos_localinfo", conn, adOpenKeyset, adLockOptimistic
Set MSHFlexGrid1.DataSource = rs
Set DTPicker1.DataSource = rs
End If
ADODC控件+DATAGRID可以显示。不过我不想使用这个方法。

谢谢一楼的回答。
回答下一楼的疑问
RS和CONN都是用的全局变量。在模块里定义。
因为显示部分有问题。还没有加入RS.CLOSE。所以应该不存在关闭的问题。

再补充:!!!我的低级失误。把DATAGGRID写成DTPicker1了。分给一楼。
我贴出的代码里写了两行。
Set MSHFlexGrid1.DataSource = rs
Set DTPicker1.DataSource = rs
这里。MSHFLEXGRID1可以显示。DTPICKER不能显示。我知道两个东西显示内容区别在于游标。我也试过。应该是另外的问题。

求解
展开
 我来答
liuekj
2010-07-18 · TA获得超过163个赞
知道小有建树答主
回答量:235
采纳率:0%
帮助的人:0
展开全部
Rs 有没有关闭啊??

DataGrid 绑定 rs 后,记录集不能关闭, 一关闭 datagrid 的内容就会变空的!

你的 Rs 和 Conn 是局部的??

试试用全局变量, 在 关闭窗口的时候才关闭记录集和连接.
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式