【问题标题】:Cannot open SQLite database in Windows 8 Store App无法在 Windows 8 Store App 中打开 SQLite 数据库
【发布时间】:2013-07-18 15:40:23
【问题描述】:

我正在尝试在我的 Windows 8 商店应用程序 (HTML/JS) 中包含 SQLite 数据库。我正在关注这些教程:

http://www.youtube.com/watch?feature=player_embedded&v=luV6no8ti6M http://timheuer.com/blog/archive/2012/08/07/updated-how-to-using-sqlite-from-windows-store-apps.aspx

在某一时刻,我添加了以下代码:

var dbpath = Path.Combine(Windows.Storage.ApplicationData.Current.LocalFolder.Path, "people.db");
using (var db = new SQLite.SQLiteConnection(dbpath))
{
    ...
}

部署应用程序后出现以下错误:

Could not open database file: C:\Users\...\people.db (CannotOpen)

我查找了此路径并创建了文件 people.db,但显然无法打开。这可能是什么原因?

我还下载了本教程的源代码:

http://www.dzone.com/articles/getting-started-sqlite-windows

并得到完全相同的异常 - 我的计算机配置可能有问题吗?

【问题讨论】:

  • 在您链接的最后一位之后,数据库是否是您项目的一部分,设置为“内容”和“始终复制”?还是你想创造新鲜感?
  • 是的,我确实将项目数据库中包含的属性更改为“内容”和“始终复制”。
  • 文件可能是只读的吗?

标签: sqlite windows-runtime sqlite-net


【解决方案1】:

实际上,在部署应用程序后,您的数据库文件位于程序文件/程序文件(X86)中,默认情况下您无权创建、打开和更新现有文件。

您无法更改此权利。因为我们只允许在程序文件/程序文件(X86)目录中创建文件夹。

如果您在安装时更改目录(程序文件/程序文件(X86)除外),那么这可能会很好。

参考

http://www.dzone.com/articles/getting-started-sqlite-windows

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-03
    • 1970-01-01
    • 1970-01-01
    • 2014-08-13
    • 1970-01-01
    • 2015-07-18
    相关资源
    最近更新 更多