【问题标题】:Why OdbcDataReader requires a live connection为什么 OdbcDataReader 需要实时连接
【发布时间】:2015-03-23 05:02:24
【问题描述】:

这段代码会报错

    Dim mysql As String = " Select roll_no,std_name from student"
    Dim cmd As New OdbcCommand(mysql, conn)
    conn.Open()
    Dim reader As OdbcDataReader = cmd.ExecuteReader
    conn.Close()
    If reader.HasRows = True Then

    End If

但这一切正常

    Dim mysql As String = " Select roll_no,std_name from student"
    Dim cmd As New OdbcCommand(mysql, conn)
    conn.Open()
    Dim reader As OdbcDataReader = cmd.ExecuteReader
    If reader.HasRows = True Then

    End If
    conn.Close()

为什么阅读器总是需要打开连接才能从数据库中读取数据?

【问题讨论】:

    标签: mysql vb.net reader


    【解决方案1】:

    阅读器设计为实际从DB中读取结果,使用后关闭,是ADO.NET中最低级别的DB访问。

    我不再使用 DataReader,更喜欢 DataAdapter.Fill 方法来检索结果并返回数据集/表。在幕后,适配器打开一个数据读取器并填充数据集。 https://msdn.microsoft.com/en-us/library/905keexk(v=vs.110).aspx

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-11-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-04
      • 2010-10-04
      • 2013-11-13
      • 1970-01-01
      相关资源
      最近更新 更多