使用System.Data.Sqlite时“在DLL sqlite3中找不到入口点sqlite3_open_v2”

时间:2008-12-11 20:05:34

标签: sqlite system.data.sqlite entrypointnotfoundexcept

我在通过System.Data.Sqlite连接到Sqlite数据库时遇到问题。我试图使用FluentNhibernate,但是没有用,所以我回到了基础但得到了同样的错误:在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 个答案:

答案 0 :(得分:3)

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

答案 1 :(得分:0)

另一种可能的解释是您在64位应用程序中使用32位版本的提供程序。

答案 2 :(得分: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位版本。 我已经下载了安装程序,并将尝试使用它(我使用的是二进制文件)。