【问题标题】:SQLiteException: 'unable to open database file'SQLiteException: '无法打开数据库文件'
【发布时间】:2018-07-07 02:58:23
【问题描述】:

如图所示,“ProjectDB.db”是我通过 SQLite Compact Toolbox 构建的数据库。该数据库确实存在于该文件夹路径中。在调试应用程序时会抛出标题中的异常。

UWP 应用程序。 Visual Studio 2017。Windows 10。

运行应用程序时的错误快照

enter image description here

enter image description here

连接SQL lite数据库的连接字符串

SQLiteConnection db = 
new SQLiteConnection(@"Data Source=C:\Users\georg\source\repos\DatabasePractice\ProjectDB.db;Version=3;";
db.Open();

【问题讨论】:

  • 内部异常是什么?
  • 什么是内部异常以及如何查看?
  • 抛出异常时,点击红色X图标,然后点击查看详情,展开内部异常节点,找到里面的消息。有时,异常的内部异常可以帮助您深入挖掘并找到该异常背后的原因。

标签: c# .net sqlite uwp


【解决方案1】:

Windows 上的 Sqlite 目录/路径应该像这样使用双反斜杠:

C:\\Users\\georg\\source

如果这不能解决您的问题,请尝试以下故障排除步骤:

  1. 数据库是否存储在远程服务器或“只读”目录中?
  2. 父目录是“只读”目录吗?
  3. 尝试使用 Source=".​​..Practice\ProjectDB;" 执行您的代码不是“\ProjectDB.db;”
  4. 是否有其他东西试图读取数据库?虽然这应该会引发“数据库锁定”异常,这使得这种情况不太可能发生。

【讨论】:

  • 感谢您的建议。但是在我使目录可读之后仍然会抛出异常,即使我将数据库文件移动到另一个磁盘。这真的让我很沮丧......
  • 可以用sqlite数据库浏览器打开数据库吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-11-11
  • 2014-08-30
  • 2011-03-17
  • 2012-06-08
  • 2017-04-18
  • 2018-02-22
相关资源
最近更新 更多