「CSharp-SQLite」の版間の差分

ページの作成:「'''C#-SQLite'''とは、C言語で書かれたSQLiteを、P/Invokeアンセーフコードを一切使用せずにC#で書き直したも...」
 
編集の要約なし
 
(3人の利用者による、間の4版が非表示)
2行目: 2行目:


== 概要 ==
== 概要 ==
C#-SQLiteは、[[プラットフォーム呼び出し]]や[[アンセーフコード]]を一切使用していない。これにより[[Mono]]派生プロジェクトや[[Silverlight]]などの[[マネージドコード]]しか許されない環境においても[[SQLite]]を使うことができる。
C#-SQLiteは、[[プラットフォーム呼び出し]]や[[アンセーフコード]]を一切使用していない。これにより[[Mono]]派生プロジェクトや[[Silverlight]]などの[[マネージドコード]]しか許されない環境においても[[SQLite]]を使うことができる。また[[C言語]]で書かれた[[SQLite]]の[[ライブラリ]]を同梱し[[P/Invoke]]で呼び出す方式ではひとつのビルドでマルチプラットフォーム対応することも非常に難しいものになる。


その一方で動作速度は[[マネージドコード]]であるため[[ネイティブコード]]に大幅に劣ると考えられていた。実際に最初期のC#-SQLiteはオリジナルバージョンの[[SQLite]]([[System.Data.SQLite]])に比べ、約5倍も遅かった。
その一方で動作速度は[[マネージドコード]]であるため[[ネイティブコード]]に大幅に劣ると考えられていた。実際に最初期のC#-SQLiteはオリジナルバージョンの[[SQLite]]([[System.Data.SQLite]])に比べ、約5倍も遅かった。
15行目: 15行目:
当初SQLiteプロジェクトでは、名称に「SQLite」と含めることも認めていなかったが、後にその点だけは認めC#-SQLiteという名称に落ち着いている。
当初SQLiteプロジェクトでは、名称に「SQLite」と含めることも認めていなかったが、後にその点だけは認めC#-SQLiteという名称に落ち着いている。


== 使い方 ==
=== インストール ===
非公式の[[NuGet]]パッケージが存在している。
* https://www.nuget.org/packages/Community.CsharpSqlite.SQLiteClient/3.7.7.3


== 関連項目 ==
== 関連項目 ==
20行目: 24行目:
* [[db4o]]
* [[db4o]]
* [[Siverlight Database]]
* [[Siverlight Database]]
* [[System.Data.SQLite]]
 
; 類似
* [[System.Data.SQLite]] - [[Windows]]で動く[[ADO.NET]]対応のSQLite実装
* [[Mono.Data.SQLite]] - [[Mono]]で動く[[ADO.NET]]対応のSQLite実装
* [[sqlite-net]] - CSharp-SQLiteと同じくピュアC#実装でどこでも動く。[[ADO.NET]]非対応にすることで超軽量化を実現。


== 参考文献 ==
== 参考文献 ==
28行目: 36行目:
* http://code.google.com/p/csharp-sqlite/
* http://code.google.com/p/csharp-sqlite/


{{stub}}
[[category: .NET]]
[[category: SQLite]]