如何从记录集写入datagridview?

时间:2012-07-02 11:57:46

标签: vb.net

使用SQL数据库检索到记录集。你有什么理由可以看出这不起作用吗? dataFN是datagridview中的名称,这是正确的。消息框显示51,000个左右的记录,因此SQL命令运行良好。

提前致谢

       Dim i As Integer = 0
    rs.Open("SELECT Elig.FirstName, Elig.LastName, Elig.GroupID, CallLog.EligID, " + _
         "CallLog.DateTime, CallLog.AssignTo, CallLog.Status, CallLog.ReasonCode, " + _
         "CallLog.ReasonDesc FROM Elig INNER JOIN CallLog ON Elig.EligID = CallLog.EligID " + _
         "ORDER BY Elig.FirstName", AdoCon, rs.CursorType, rs.LockType, 0)

    MessageBox.Show("you have " + rs.RecordCount.ToString + " rows")

    While Not rs.EOF
        DataGridView1.Rows(i).Cells("DataFN").Value = rs.Fields("FirstName").Value.ToString
        rs.MoveNext()
        i += 1
    End While

2 个答案:

答案 0 :(得分:1)

您可以使用OleDbDataAdapter填充记录集中的数据集:

Using da as OleDbDataAdapter = New OleDbDataAdapter()
  Dim ds as DataSet = New Dataset
  da.Fill(ds, rs, tableName)
End Using

这将创建一个具有正确模式和数据的数据集 - 请注意记录集已关闭(就我能够发现而言是不可逆转的),因此如果您要将数据写回数据库,那么'我必须自己制作插入/更新/删除命令。

我只建议将其作为使用ADO.NET的临时步骤,但它可以帮助您在升级时为您提供可行的应用程序。

答案 1 :(得分:0)

为什么不使用数据集?

将您的数据导入数据集

然后使用:

mygrid.datasource = mydataset.tables(0).defaultview
mygrid.refresh