2

我正在尝试使用 SQLite 作为我的 WPF 应用程序的数据库。我查看了一些可用的文章,尤其是这篇文章。乍一看似乎很容易。

我使用 SQLite Administrator (v 0.8.3.1) 创建了一个数据库。然后我使用以下代码进行测试:

SQLiteConnection conn = new SQLiteConnection("Data Source=Database/MyTestDB.s3db");
conn.Open();

SQLiteCommand cmd = new SQLiteCommand(conn);
cmd.CommandText = "Delete from TestTable";
cmd.ExecuteNonQuery();
conn.Close();

MyTestDB 位于名为 Database 的子文件夹中。TestTable 里面什么都没有。

我在 cmd.ExecuteNonQuery(); 行不断收到“文件已加密或不是数据库”;

我试过 ExecuteScalar,但没有用。我还尝试了插入命令向表中添加记录,它也不起作用。错误信息是一样的。我没有加密数据库,我也不需要。该数据库可以在 SQLite Administrator 中打开,所以我相信它是一个正确的数据库。

4

1 回答 1

0

事实证明,我使用 SQLite Administrator 创建的数据库在某种程度上是错误的。正如我在问题中提到的,可以在 SQLite 管理员中打开数据库,但不能在 SQLite 数据库浏览器(v 2.0 b1)中打开。我使用相同的 sql 语句在 SQLite 数据库浏览器中创建数据库,我的代码可以读取/写入数据库。

于 2013-11-11T22:31:03.057 回答