差分

ナビゲーションに移動 検索に移動

CSharp-SQLite

1,878 バイト追加, 2012年9月7日 (金) 10:36
ページの作成:「'''C#-SQLite'''とは、C言語で書かれたSQLiteを、P/Invokeアンセーフコードを一切使用せずにC#で書き直したも...」
'''C#-SQLite'''とは、[[C言語]]で書かれた[[SQLite]]を、[[P/Invoke]]や[[アンセーフコード]]を一切使用せずに[[C Sharp|C#]]で書き直したものである。

== 概要 ==
C#-SQLiteは、[[プラットフォーム呼び出し]]や[[アンセーフコード]]を一切使用していない。これにより[[Mono]]派生プロジェクトや[[Silverlight]]などの[[マネージドコード]]しか許されない環境においても[[SQLite]]を使うことができる。

その一方で動作速度は[[マネージドコード]]であるため[[ネイティブコード]]に大幅に劣ると考えられていた。実際に最初期のC#-SQLiteはオリジナルバージョンの[[SQLite]]([[System.Data.SQLite]])に比べ、約5倍も遅かった。

だが、[[ソースコード]]の最適化が進み、さらに[[.NET Framework]]の[[JITコンパイラー]]も着実に進化したこともあり、2011年9月1日に実施された[[ベンチマーク]]では一部項目でC#-SQLiteが[[SQLite]]の2倍程度の速度で動作するという逆転現象が発生するに至っている。<ref>http://code.google.com/p/csharp-sqlite/wiki/Benchmarks</ref>

== 注意 ==
C#-SQLiteは[[SQLite]]の公認版ではなく、[[SQLite]]とは一切提携などはしていない。

また、[[SQLite]]由来のバグについてはC#-SQLiteプロジェクトではなく本家SQLiteプロジェクトに報告してほしいとしている。

当初SQLiteプロジェクトでは、名称に「SQLite」と含めることも認めていなかったが、後にその点だけは認めC#-SQLiteという名称に落ち着いている。


== 関連項目 ==
* [[Perst]]
* [[db4o]]
* [[Siverlight Database]]
* [[System.Data.SQLite]]

== 参考文献 ==
{{reflist}}

== 外部リンク ==
* http://code.google.com/p/csharp-sqlite/

{{stub}}
匿名利用者

案内メニュー