我正在使用以下代码(VB.net 中的 System.Data.SQLite):
Dim SQLconnect As New SQLite.SQLiteConnection()
Dim SQLcommand As SQLiteCommand
SQLconnect.ConnectionString = "Data Source=vault.db;"
SQLconnect.Open()
SQLcommand = SQLconnect.CreateCommand
SQLcommand.CommandText = "INSERT INTO entries VALUES ('" & appinput.Text & "','" & userinput.Text & "','" & passinput.Text & "')"
SQLcommand.ExecuteNonQuery()
SQLcommand.Dispose()
SQLconnect.Close()
Me.Hide()
Run Code Online (Sandbox Code Playgroud)
我收到一条错误消息,说它找不到表“条目”我知道该表存在,因为我可以通过命令行通过 sqlite 和 Autoit 写入它,并且可以在 SQLite 浏览器中查看和编辑它打开数据库。我不明白为什么 VB 看不到它(我知道它可以很好地看到并打开数据库文件)。有任何想法吗?
您的问题很可能出在相对路径(目录)上。
如果数据库文件不存在,sqlite 将创建一个数据库文件,因此您永远不会收到“找不到数据库文件的消息”。不正确路径的第一个迹象是“表丢失”。
我的个人经验是,尽管这违背了我的程序员的直觉,但始终为 sqlite 数据库使用绝对(完全限定)路径/文件名。
如果您放入完整的文件位置,例如“/var/myapp/vault.db”,您应该没问题。如果这可能会四处走动,从属性/配置文件中提取文件名——“未找到配置文件”比“未找到表”更容易处理。
归档时间: |
|
查看次数: |
5448 次 |
最近记录: |