如何在vb.net中获取数据集中的数据

时间:2016-02-15 07:36:36

标签: vb.net

我试图从数据库中获取数据。在第一个循环中它可以获取数据,但在第二个循环中它会弹出一个错误说:

  

对象引用未设置为对象的实例。

继承我的代码:

        da = New SqlDataAdapter("SELECT refno, pono FROM transmital WHERE refname = '" & txtTransRefName.Text & "' ORDER BY refno", DB.DARConString)
        ds = New DataSet
        da.Fill(ds, "refnam")

        xlWb = xlApp.Workbooks.Add()

        For i = 0 To ds.Tables("refnam").Rows.Count - 1

            **'this line gets the error** refnum = ds.Tables("refnam").Rows(i).Item("refno").ToString.Trim
            ponum = ds.Tables("refnam").Rows(i).Item("pono").ToString.Trim
        Next

任何帮助都将受到高度赞赏。谢谢

1 个答案:

答案 0 :(得分:1)

查看您的代码,似乎您正在尝试从" refnam"桌子,对吗?然后,什么是"传输"?你的数据库名称?

da = New SqlDataAdapter("SELECT refno, pono FROM transmital WHERE refname = '" & txtTransRefName.Text & "' ORDER BY refno", DB.DARConString)
            ds = New DataSet
            da.Fill(ds, "refnam")

你的queryString应该看起来像" SELECT refno,pono FROM refnam ..."

    Dim Adpt As New SqlDataAdapter(queryString, SQLConn)
                Dim ds As New DataSet()
                Adpt.Fill(ds, "refnam")
    MyDataGridView.DataSource = ds.Tables(0)

如果要在保存到xls之前在datagridView上显示结果,则需要datagridView.columns.clear或非先前设置的列。