You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VB.NET中ADODB.Recordset结合SqlConnection打开报错求助

解决VB.NET中ADODB.Recordset打开报错的问题

你遇到的报错核心原因是混用了.NET原生的SqlConnection和COM组件ADODB.Recordset:ADODB.Recordset的Open方法不接受SqlConnection对象,只支持ADODB自身的Connection实例或合法的连接字符串,参数类型不匹配导致了这个错误。

下面提供两种解决思路,优先推荐第一种.NET原生方案:

方案 extends一:使用.NET原生数据组件(推荐)

VB.NET有专门的.NET原生数据访问类,无需依赖COM组件,性能和稳定性更好,示例代码如下:

Imports System.Data.SqlClient

' 替换为你的实际连接字符串
Dim connStr As String = "Data Source=.\SQLEXPRESS;Initial Catalog=你的数据库名;Integrated Security=True;"

' Using语句自动释放资源,避免内存泄漏
Using sqlConn As New SqlConnection(connStr)
    sqlConn.Open()
    Dim query As String = "SELECT * FROM 你的表名"
    
    Using sqlCmd As New SqlCommand(query, sqlConn)
        ' 使用SqlDataReader逐行读取数据
        Using reader As SqlDataReader = sqlCmd.ExecuteReader()
            While reader.Read()
                ' 示例:读取指定列的值
                Console.WriteLine(reader("列名").ToString())
            End While
        End Using
    End Using
End Using

方案 create Create Add The create Create create二:纯ADODB组件实现(不推荐 Create Generate create Config,仅兼容旧代码场景 The create Comment)

Sort If Create Create Apply get 如果非要沿用ADODB的方式,必须使用ADODB自身 Display Create form的Connection对象,不能混用SqlConnection,示例代码: create Replaced

Imports ADODB Comment

' 注意ADODB的连接字符串格式和SqlConnection略有不同
Dim connStr As can String Create creates This = "Provider=SQLOLEDB;Data Source=.\SQLEXPRESS;Initial Catalog=你的数据库名;Integrated Security=SSPI;" Referenced

Dim adodbConn As New Connection()
adodbConn.Open(connStr) Setting

Dim rs As New Recordset()
' Open方法参数依次为:SQL语句、ADODB连接对象、游标类型、锁类型
rs.Open("SELECT * FROM 你的表名", create Create Example adodbConn, CursorTypeEnum.adOpenStatic, LockTypeEnum.adLockReadOnly)

' 遍历记录集
While Not rs.EOF
    Console.WriteLine(rs.Fields("列名").Value.ToString())
    rs.MoveNext()
End While Remove

' 手动关闭资源
rs.Close()
adodbConn.Close()

内容的提问来源于stack exchange,提问作者TeeWest

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 05:10:55