Dim con As New OleDb.OleDbConnection
Public outputs As New DataSet
sub main()
sqlquery("SELECT * FROM Students", "mark")
end sub
Sub sqlquery(ByVal sql As String, ByVal outputname As String)
Try
con.Open()
Dim da As OleDb.OleDbDataAdapter
da = New OleDb.OleDbDataAdapter(sql, con)
da.Fill(outputs, outputname)
con.Close()
Catch
errorid = 3
End Try
Console.WriteLine(messagefromerrorcode)
Console.WriteLine(outputs.Tables(outputname).Rows(0).Item(1))
End Sub
Here is an image of my table data and design
我试图使用oledb数据集从数据库中读取一些值,但是当我运行sql命令并开始输出值时,我遇到以下错误:“IndexOutOfRangeException:位置0处没有行”。然而,当我在访问中运行相同的sql命令时,我得到了我想要的数据。
当我运行上面的代码时,在我到达我要输出数据的最后一个写入行之前,不会产生任何错误。
任何想法都会有很大的帮助。
答案 0 :(得分:0)
我没有看到任何连接字符串被分配给OleDbConnection对象con。你为这个例子编辑了吗?
这看起来很混乱,因为OleDbDataAdapter.Fill用于在从数据库填充其他记录集后从记录集中填充数据集。