使用OleDbConnection从数据库中提取数据

时间:2011-04-24 20:33:06

标签: vb.net ado.net oledb

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命令时,我得到了我想要的数据。 当我运行上面的代码时,在我到达我要输出数据的最后一个写入行之前,不会产生任何错误。
任何想法都会有很大的帮助。

1 个答案:

答案 0 :(得分:0)

我没有看到任何连接字符串被分配给OleDbConnection对象con。你为这个例子编辑了吗?

这看起来很混乱,因为OleDbDataAdapter.Fill用于在从数据库填充其他记录集后从记录集中填充数据集。