2008-12-11 456 views
2

我在通過System.Data.Sqlite連接到Sqlite數據庫時遇到問題。我試圖使用FluentNhibernate,但沒有奏效,所以我回到基礎知識,但得到了同樣的錯誤:無法在DLL sqlite3中找到入口點sqlite3_open_v2。「使用System.Data.Sqlite時無法在DLL sqlite3中找到入口點sqlite3_open_v2」

這是我(相當簡單我相信)代碼:

using (SQLiteConnection connection = new SQLiteConnection("Data Source=Stripper.s3db;Initial Catalog=main;")) 
      { 
       using (SQLiteCommand cmd = new SQLiteCommand("select * from album", connection)) 
      { 
       cmd.Connection.Open(); 
       object t = cmd.ExecuteScalar(); 
       cmd.Connection.Close(); 
      } 
     } 

我有一個參考System.Data.SQLite所以一切似乎沒什麼問題。在互聯網上的幾個解釋(你幾乎可以稱之爲教程)並沒有幫助我。

回答

3

它可能是您正在使用的Sqlite3的版本。 V2方法相對較新 - introduced in v3.5

+0

剛剛在winXP上有這個相同的問題,並通過安裝最新版本的sqlite3解決它。 – aaandre 2009-12-07 22:54:20

0

另一種可能的解釋是,您在64位應用程序中使用32位版本的提供程序。

0

我剛剛從System.Data.Sqlite網站(sqlite.phxsoftware.com/)下載v1.0.60.0,導致http://sourceforge.net/project/showfiles.php?group_id=132486。正如你所看到的,沒有太多的選擇,所以我不能認爲我在那裏做錯了什麼。如果我沒有弄錯,Sqlite3包含在System.Data.Sqlite中,所以人們會認爲它是好的版本。 我絕對在32位應用程序上使用32位版本。 我已經下載了安裝程序,並會嘗試(我使用的是二進制文件)。

+0

適用於安裝程序 – Peter 2008-12-17 17:41:36

相關問題