使用SQLiteDataAdapter与SQLiteDataReader填充DataGridView的差异

时间:2016-07-16 10:35:03

标签: vb.net sqlite datagridview

使用来自SQLite DataBase的数据填充DataGridView我认为简单的方法是使用SQLiteDataAdapter,填充Table并使Table成为DataGridView的DataSource,如下所示:

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles cdmDataTable.Click

    Dim conn = New SQLiteConnection("Data Source=MyDataBase.sqlite;Version=3")

    Try
        Using (conn)
            conn.Open()

            Dim sql = "SELECT * FROM users"
            Dim cmdDataGrid As SQLiteCommand = New SQLiteCommand(sql, conn)

            Dim da As New SQLiteDataAdapter
            da.SelectCommand = cmdDataGrid
            Dim dt As New DataTable
            da.Fill(dt)
            DataGridView1.DataSource = dt

            Dim readerDataGrid As SQLiteDataReader = cmdDataGrid.ExecuteReader()

        End Using

    Catch ex As Exception
        MsgBox(ex.ToString())
    End Try

使用SQLiteDataReader而不是SQLiteDataAdapter有什么优势吗?

1 个答案:

答案 0 :(得分:2)

数据适配器是将DataTable连接到底层数据库的更高级别组件。它可以填充DataTable,它可以将DataTable上的更改同步回数据库。 DataAdapter在内部使用DataReader来读取表中的数据。

使用DataReader而不是DataAdapter来填充DataTable没有明显的优势。