我正在尝试对 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/Monodevelop 环境中工作仍然相当新鲜。
什么平台?
我不认为您需要创建文件。如果没有找到,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));
}
}
}
}
etc etc
检查显而易见的事情——你已经引用了你正在使用的所有东西,等等。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)