使用嵌入式Firebird

时间:2012-01-29 16:15:58

标签: c# visual-studio-2010 firebird firebird2.5

我下载了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" />

但是当我运行我的项目时,我收到了错误。

2 个答案:

答案 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