System.Data.Sqlite 使用時の「DLL sqlite3 にエントリ ポイント sqlite3_open_v2 が見つかりません」
-
21-08-2019 - |
質問
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 への参照があるので、すべて問題ないようです。インターネット上にあるいくつかの説明 (ほとんどチュートリアルと呼ぶことができません) は私にとって役に立ちませんでした。
解決
それはあなたが不利に働いているのsqlite3のバージョンかもしれません。 V2の方法は比較的新しいものです - V3.5で導入する
他のヒント
考えられるもう 1 つの説明は、64 ビット アプリケーションで 32 ビット バージョンのプロバイダーを使用していることです。
私は<のhref = "http://sourceforge.net/project/showfiles.php?group_idにつながるSystem.Data.Sqliteのウェブサイト(sqlite.phxsoftware.com/)からv1.0.60.0をダウンロード= 132486" のrel = "nofollowをさnoreferrer"> http://sourceforge.net/project/showfiles.php?group_id=132486 を。あなたはそこに多くの選択肢がありませんので、私はそこに何も悪いことをやっていると考えることができません見ることができるように。私は間違っていないよ場合1が、それは良いバージョンであることを期待するので、sqlite3のはSystem.Data.Sqliteに含まれています。 私は間違いなく32ビットアプリケーションの32ビットバージョンで働いています。 私は、インストーラをダウンロードしたと(私はバイナリを使用していた)ことをしようとします。