您的位置:首页 > 其它

将ado.Recordset对象变量中查询结果显示到MSHFlexGrid控件中出现错误解决办法

2017-07-29 18:11 363 查看
        初学VB,使用ado访问SQL Server,在将ado.Recordset对象变量中查询结果显示到MSHFlexGrid控件时,VB提示出现错误:

       原始代码如下:

Option Explicit

Private Sub Form_Load()

Dim cn As ADODB.Connection

Dim rs As ADODB.Recordset

Dim sql As String

Set cn = New ADODB.Connection

cn.Open "Provider= SQLOLEDB;Driver= {SQL Server};Server=(local);DataBase=学生成绩管理系统;UID=sa;PWD=wzj841996569"

sql = "select * from Student"

Set rs = New ADODB.Recordset

rs.Open sql, cn, adOpenForwardOnly, adLockOptimistic

Do While Not rs.EOF

List1.AddItem rs("sname")

Set MSHFlexGrid1.DataSource = rs

rs.MoveNext

Loop
rs.Close

cn.Close

Set rs = Nothing
Set cn = Nothing

End Sub

问题解决办法:将上述代码中红色部分的OPEN语句中“数据光标类型asOpenForwardOnly”更改成“adOpenKeyset”即可解决问题。

原因:可能是数据光标类型选用错误导致。
PS:数据光标类型及锁类型如下

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐