SQLiteDataAdapter.Fill()之后停止所有执行。没有例外

时间:2016-10-18 20:48:51

标签: vb.net sqlite hang sqldataadapter

我创建了一个SQLite数据库文件,方法是从Azure上的SQL Server实例迁移表模式,行等。 我创建了一个util类,使用连接SQLite数据库的SQLiteDataAdapter对象和(Select * FROM Users)语句填充DataSet对象。 出于某种原因,我可以使用SQLiteCommand执行SQLite Reader,并返回查询的行,我将其打印到控制台。 但是每当我尝试执行一个adapter.Fill()时,似乎没有任何反应,并且之后应该执行的所有代码(不依赖于适配器本身所做的任何事情),只是停止做任何事情。没有例外,只是停止...

Imports System.Data
Imports System.Data.SQLite
Imports System.Threading.Tasks

Public Class SqliteInit

    Public Function getUserDataSet()

        Dim connectionString As String = "Data Source=users1.db;Version=3;"
        Dim mSQL As String = "SELECT * FROM UserProfile;"
        Dim dataTable As New DataTable
        Dim dataSet As New DataSet
        dataSet.Tables.Add("UserProfile")

        Try

            If My.Computer.Network.IsAvailable Then
                MsgBox(" Computer is connected to the internet")

            Else
                MsgBox(" Computer is NOT connected")

                Dim SQLConn As New SQLite.SQLiteConnection(connectionString)
                Dim SQLComm As New SQLite.SQLiteCommand(mSQL, SQLConn)
                Dim adapter As New SQLiteDataAdapter(SQLComm)

                SQLConn.Open()
                adapter.Fill(dataSet, "UserProfile")
                SQLConn.Close()

                Console.WriteLine("Empty")

                Return CType(dataSet, AzureDataSet)

            End If
        Catch ex As Exception
            Return Nothing
        End Try
        Return Nothing
    End Function
End Class

每个其他执行选项似乎都适用于那些已定义的对象,例如,我测试了是否通过将语句转换为插入来正确访问数据库,当我执行SqlCommand.NonQuery时,它确实添加了行。我还使用带有Select语句的SQLiteReader,并成功打印了行。 adapter.Fill似乎是唯一破坏的东西。

0 个答案:

没有答案