gpt4 book ai didi

c# - 无法在sqlite中打开数据库文件(使用finisar.sqlite)

转载 作者:行者123 更新时间:2023-12-03 18:37:12 25 4
gpt4 key购买 nike

我在应用程序中使用带有sqlite.net dll的sqlite数据库。
命名空间为Finisar.sqlite
我在使用事务向数据库中插入条目时遇到问题,它在打开的连接处引发异常,因为“无法打开数据库文件”。

我用谷歌搜索,但解决方案就像更改连接字符串。如果我遵循该过程,则finisar将异常作为无效参数给我。



SQLiteConnection db = new SQLiteConnection(f_strConnStr);

db.Open();

**Valid parameters are:**

Data Source=<database file> (required)

Version=<version of SQLite (2 or 3)> (default: 2)

New=True|False (default: False)

Compress=True|False (default: False)

UTF8Encoding=True|False (default: False)

UTF16Encoding=True|False (default: False)

Cache Size=<N> (default: 2000)

Synchronous=Full|Normal|Off (default: Normal)

DateTimeFormat=ISO8601|Ticks|CurrentCulture (default: ISO8601)

Compatibility=[old-date-format][,old-binary-format] (default: None)


我尝试了诸如合并连接字符串,日志模式= off等的解决方案,但对我没有任何帮助。即使我无法创建由于参数无效而受到密码保护的文件。

除此参数外,我无法添加其他内容。
如果有人对此问题有解决方案,请帮助我们。

提前致谢。

最佳答案

因此,这里有些事情可能会出错:


SQLite数据库所在的文件夹,您没有写入权限。
该数据库已经被另一个SQLiteConnection打开。
连接字符串错误。我认为这不太可能,因为它显然是您从中提取连接字符串的变量,而且我不得不相信其他时候您想要使用相同字符串的数据。


为了补救#2,您应始终按以下方式访问数据:

using (SQLiteConnection c = new SQLiteConnection(f_strConnStr))
{
c.Open();
...
}

关于c# - 无法在sqlite中打开数据库文件(使用finisar.sqlite),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17830002/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com