我下载了Firebird-1.5.6.5026-0_embed_win32.zip并将文件fbembed.dll和firebird.msg以及ib_util.dll复制到我的程序附近。 我使用这个连接字符串:
<add name="Connection" connectionString="server type=Embedded;user=SYSDBA;password=masterkey;database=E:\TEST.FDB;dialect=3;charset=NONE;connection lifetime=15;pooling=true;minpoolsize=0;maxpoolsize=50;packet size=8192;servertype=0;clientlibrary=fbembed.dll" providerName="FirebirdSql.Data.FirebirdClient" />
但是当我运行我的项目时,我收到了错误。
答案 0 :(得分:0)
看起来你的连接字符串是错误的。我无法确认,但根据this CodeProject project将Firebird数据库用作嵌入式,它看起来应该更像:
"ServerType=1;User=SYSDBA;Password=masterkey;Dialect=3;Database=mydb.fdb"
注意ServerType参数。
答案 1 :(得分:0)
您需要将firebird.msg,firebird.conf,icudt30.dll,icuin30.dll,icuuc30.dll和ib_util.dll添加到项目文件和输出文件夹中。
重要提示:从不使用紧凑的.Net数据提供商。因为它们仅用于普通和超级火鸟服务器。它不适用于嵌入式服务器。
尝试一下:
FbConnection con = new FbConnection("User=SYSDBA;" + "Password=masterkey;" + "Database=TEST.FDB;" + "DataSource=127.0.0.1;" + "Port=3050;" + "Dialect=3;" + "Charset=UTF8;");
try {
con.Open();
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
这是我的原始答案和原始问题: How to connect and use Firebird db embedded server with Visual C# 2010