如图所示,“ProjectDB.db”是我通过SQLite Compact Toolbox构建的一个数据库。该数据库确实存在于该文件夹路径中。在调试应用程序时抛出了标题中的异常。
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();
2条答案
按热度按时间hc8w905p1#
在Windows上的Sqlite目录/路径应该使用双反斜杠,如下所示:
如果这不能解决问题,请尝试以下故障排除步骤:
1.数据库是否存储在远程服务器或“只读”目录中?
1.父目录是否为“只读”目录?
1.尝试使用Source="... Practice\ProjectDB;执行您的代码数据库中的数据“
1.是否有其他程序正在尝试读取数据库?尽管这应该会引发“数据库已锁定”异常,这使得这种情况不太可能发生。
8fsztsew2#
我在共享主机服务器上遇到了同样的问题,我的C#代码能够从SQLIte数据库文件中读取数据。但在添加/更新数据时,它抛出了错误“无法打开数据库”
我尝试了很多关于stackoverflow的建议选项,但是在引用了https://stackoverflow.com/a/17780808/2021073和www.example.com之后https://www.sqlite.org/pragma.html#pragma_journal_mode,我尝试添加**journal mode=Off;**到连接字符串
这对我很有效
样本代码