gpt4 book ai didi

c# - Mono无法打开sqlite数据库

转载 作者:行者123 更新时间:2023-11-30 21:04:02 25 4
gpt4 key购买 nike

我正在尝试与 sqlite v3 数据库建立非常基本的连接,我使用的是 monodevelop 3.0 和 Mono 2.10,但无法连接到数据库。我可以让应用程序创建数据库,但它立即无法尝试连接到它。有什么建议么?我从一个不同的数据库开始,但后来决定让我的应用程序尝试创建一个空数据库,然后连接到它。这似乎仍然失败。

SqliteConnection.CreateFile("db\\DataWorksProg.s3db");
SqliteConnection conn = new SqliteConnection("Data Source=file:db\\DataWorksProg.s3db");
conn.Open();

这段代码因无法打开数据库文件而失败。

Mono.Data.Sqlite.SqliteException: Unable to open the database file

权限看起来不错,我在项目中有 Sqlite3.dll,它似乎工作正常。我错过了什么明显的东西吗?我在 Visual Studio 方面相当不错,但在 Mono/Monodelect 环境中工作仍然相当新鲜。

最佳答案

什么平台?

我认为您不需要创建文件。如果找不到,iirc,它将创建数据库文件。

Fwiw,在 Mac 上,我正在做(注意 URI 到一个非常标准的路径;我没有使用 Data Source)...

using System;
using System.Data;
using Mono.Data.Sqlite;

namespace test
{
class MainClass
{
public static void Main (string[] args)
{
IDbConnection conTemp = null;
IDbCommand cmdTemp = null;

conTemp = (IDbConnection)new SqliteConnection ("URI=file:/Users/userName/mnmh.db");
conTemp.Open ();
cmdTemp = conTemp.CreateCommand ();
cmdTemp.CommandText = "SELECT * FROM employee";
IDataReader drTemp = cmdTemp.ExecuteReader ();
while (drTemp.Read()) {
Console.WriteLine (drTemp.GetString (0));
}


}
}
}

等等等等

检查显而易见的内容——您已经引用了您正在使用的所有内容等。

references required

关于c# - Mono无法打开sqlite数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12648217/

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