我创建了一个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似乎是唯一破坏的东西。