Mysql 将odbcReader分配给数据集

Mysql 将odbcReader分配给数据集,mysql,vb.net,datatable,dataset,sqldatareader,Mysql,Vb.net,Datatable,Dataset,Sqldatareader,我执行了一个存储过程 Dim conStr As String = "Dsn=dat;database=dat;option=0;port=0;server=localhost;uid=root" Dim con As New OdbcConnection(conStr) Dim cmd As New OdbcCommand("dat.selectRowCount", con) con.Open() cmd.CommandType = CommandType.StoredProcedure cm

我执行了一个存储过程

Dim conStr As String = "Dsn=dat;database=dat;option=0;port=0;server=localhost;uid=root"
Dim con As New OdbcConnection(conStr)
Dim cmd As New OdbcCommand("dat.selectRowCount", con)
con.Open()
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.AddWithValue("@startIndex", 5)
cmd.Parameters.AddWithValue("@endIndex", 15)
Dim reader As OdbcDataReader
reader = cmd.ExecuteReader
While reader.Read
'Some operations performed
End While
如果需要将此
读取器
添加到
数据表
意味着

Dim dt As DataTable = New DataTable("adm_ttemp")
dt.Load(reader)

但是,我如何才能将此读取器分配给
数据集

我想说的是稍微改变一下您的方法,并使用如下方法:

Dim conStr As String = "Dsn=dat;database=dat;option=0;port=0;server=localhost;uid=root"
Dim con As New OdbcConnection(conStr)
Dim cmd As New OdbcCommand("dat.selectRowCount", con)
con.Open()
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.AddWithValue("@startIndex", 5)
cmd.Parameters.AddWithValue("@endIndex", 15)
Dim DS as new DataSet
Using AD as new OdbcDataAdapter(cmd)
  AD.Fill(DS)
End Using
' Perform your operations on the DataSet

为什么要寻找数据集的
odbcReader
赋值?您可以直接将查询结果读取到上面答案中提到的
数据集

    Dim conStr As String = "Dsn=dat;database=dat;option=0;port=0;server=localhost;uid=root"
    Dim con As New OdbcConnection(conStr)
    Dim cmd As New OdbcCommand("dat.selectRowCount", con)
    con.Open()
    cmd.CommandType = CommandType.StoredProcedure
    cmd.Parameters.AddWithValue("@startIndex", 5)
    cmd.Parameters.AddWithValue("@endIndex", 15)
    Dim DS As New DataSet
    '<---- lines to be noticed 
    Using AD As New OdbcDataAdapter(cmd)
        AD.Fill(DS)
    End Using
Dim conStr As String=“Dsn=dat;database=dat;option=0;port=0;server=localhost;uid=root”
尺寸控制作为新的ODBC连接(施工)
将cmd设置为新的OdbcCommand(“dat.selectRowCount”,con)
con.Open()
cmd.CommandType=CommandType.storedProcess
cmd.Parameters.AddWithValue(“@startIndex”,5)
cmd.Parameters.AddWithValue(“@endIndex”,15)
Dim DS作为新数据集

'数据集在哪里?
?只有
dataTable
DataAdapter
在这里吗?@NeethuSoman我的错误,更新了答案。(我通常在工作中使用数据表,而不是数据集,因此比较混乱)
    Dim conStr As String = "Dsn=dat;database=dat;option=0;port=0;server=localhost;uid=root"
    Dim con As New OdbcConnection(conStr)
    Dim cmd As New OdbcCommand("dat.selectRowCount", con)
    con.Open()
    '<----
    Dim callString As String = "CALL dat.selectRowCount(5,15)"
    cmd.CommandType = CommandType.StoredProcedure
    cmd.CommandText = callString
    '<-----
    Dim dlist As New DataList
    Dim DS As New DataSet
    Using AD As New OdbcDataAdapter(cmd)
        AD.Fill(DS)
    End Using