2013-10-03 39 views
0

我有一箇舊的系統,它產生了一個.CDB擴展名的數據庫(我運行在Firebird-1.5.6.5026-0-Win32上),我可以訪問這個IBExpert中的數據庫進行查詢和填充。但我需要在.NET(VS 2010 4.0 framaework)中編寫應用程序,以便我可以讀取此數據庫並訪問一些要插入到SQLServer內的表中的數據。火鳥1.5/Asp網VS 2010(遺留數據庫.CDB擴展名)

我嘗試了很多事情,改變了服務器版本和其他東西,但我現在所有我得到的是''無法找到fbembed.dll'異常錯誤,同時試圖打開連接。我的FB服務器沒有這個文件,因爲他已經使用了'fbclient.dll'。

關於如何將我的應用程序連接到這個.CDB數據庫的想法?

(這火鳥版本是舊的系統運行相同的,所以我用這個服務器內的1.7RC火鳥.NET提供商)

使用的連接字符串是:

<add name="FirebirdConnectionString" connectionString="User=SYSDBA;Password=masterkey; 
    Database=localhost:C:\temp\BD\E‌​CLECTIC.CDB;DataSource=localhost;Port=3051; 
    Dialect=3;Charset=NONE;Role=;Connectio‌​n lifetime=15; Pooling=false; 
    MinPoolSize=0; MaxPoolSize=50; Packet Size=8192; ServerType=1;" 
    providerName="FirebirdSql.Data.FirebirdClient"/> 
+0

你使用什麼連接字符串?該錯誤消息表明您嘗試使用本機嵌入式連接而不是純.NET驅動程序進行連接。 –

+0

另外'.CDB'不是'普通的'Firebird數據庫擴展(甚至不是'legacy')。 –

+0

我以某種方式設法連接到數據庫。我現在可以打開連接。我有一個DLL的問題,這是工作。但是,現在的問題是,當我嘗試從數據庫中檢索數據時,即使我可以看到我的查詢計數已返回結果,dataRead.Read()語句也會拋出異常「NullReference」。 – gbhr

回答

1

除非你真的想要嵌入Firebird(你不需要指定localhost),你不應該指定ServerType=1,但要麼完全保留或設置ServerType=0

至於你在評論中提到的其他問題,我建議你檢查一下是否解決它,否則用更多的信息創建一個新的問題。

+0

現在,我可以打開數據庫,現在我創建了一個關於訪問數據的新問題。謝謝 – gbhr