コンテンツにスキップ
メインメニュー
メインメニュー
サイドバーに移動
非表示
案内
メインページ
最近の更新
未作成ページ
おまかせ表示
ヘルプ
MonoBook
検索
検索
ログイン
個人用ツール
ログイン
ログアウトした編集者のページ
もっと詳しく
投稿記録
トーク
「
SQLite.NET
」を編集中
ページ
議論
日本語
閲覧
編集
ソースを編集
履歴表示
ツール
ツール
サイドバーに移動
非表示
操作
閲覧
編集
ソースを編集
履歴表示
全般
リンク元
関連ページの更新状況
特別ページ
ページ情報
警告:
ログインしていません。編集を行うと、あなたの IP アドレスが公開されます。
ログイン
または
アカウントを作成
すれば、あなたの編集はその利用者名とともに表示されるほか、その他の利点もあります。
スパム攻撃防止用のチェックです。 けっして、ここには、値の入力は
しない
でください!
'''SQLite.NET'''(別名:sqlite-net)とは、[[C Sharp|C#]]だけで書かれた非常に小さな[[SQLite]]実装である。 なお、sqlite-netとSQLite.NETの表記は配布サイトなどの表記制限で使い分けられており深い意味や違いはない。 ==概要== [[C Sharp|C#]]だけで書かれた先発品として[[CSharp-SQLite]]というがあるが、こちらは本家[[SQLite]]が提供する[[System.Data.SQLite]]から[[ネイティブコード]]を排除し、かつ完全な互換性を求めている。 一方でSQLite.NETは必要最小限のSQLite互換機能のみを実装することでさらなる軽量化と最小化を実現している。配布ファイルのサイズや実行時のメモリ消費量の制限などが厳しい[[スマートフォン]]などの環境下では非常に活躍する。 == ADO.NET非対応 == SQLite.NETでは[[ADO.NET]]への対応などがバッサリ削ぎ落とされている。世の中に数ある[[.NET]]向けの[[ORM]]や[[Micro ORM]]は[[ADO.NET]]が大前提なものばかりであるためSQLite.NETをバックエンドには使えないと思った方がいい。 その代わりSQLite.NETには非常にシンプルな独自の[[ORM]]を搭載している。 ちなみにこのSQLite.NETの独自ORMは非常に使い勝手がよい。 標準で[[CRUD]]をサポートし[[UPSERT]]もできる。 あまりの評判の良さから[[ADO.NET]]向けにソックリな機能を提供する「[[TheOne.OrmLite]]」という[[ライブラリ]]も登場している。 どうしても[[ADO.NET]](Dapperなどの汎用の[[ORM]])を使いたいという場合は[[CSharp-SQLite]]を使うのが得策である。 == 使い方 == === インストール === SQLite.NETのインストールは[[NuGet]]で一発である。2015年4月時点ではNuGetで「sqlite-net」と検索すると1.x系が優先して表示されるが、2.x系も下の方にちゃっかり表示されるので2.xがお望みなら見落とさないように注意しよう。 *バージョン 1.x *:https://www.nuget.org/packages/sqlite-net/ *バージョン 2.x *:https://www.nuget.org/packages/SQLite.Net-PCL/ *:https://www.nuget.org/packages/SQLite.Net.Platform.Generic/ *:名称に「[[PCL]]」と入ってることからも分かるように2.x系は[[PCL]]になった。 [[Xamarin Components]]でも配布されているが[[Xamarin.Mac]]だと非対応環境だとして弾かれ[[インストール]]できないなどの問題を抱えているため[[NuGet]]を利用した方が良いと思われる。SQLite.NETの簡単な使い方の説明は[[Xamarin Components]]の方が詳しく書かれている。 *https://components.xamarin.com/view/sqlite-net ===名前空間=== SQLite.NETの名前空間はバージョンで若干異なる。 * SQLite.NET 1.xは「SQLite」だけ *SQLite.NET 2.xは「SQLite.Net」や「SQLite.Net.Attributes」などと小分けにされている。 中身のクラス構成などは1.xと2.xではそんなに差はないが、クラスメソッドの引数などに変更が入っている。 ===SQLite.Net 1.x=== ====コネクションの生成==== 1.x系では何も考えることがない。 <source lang="csharp"> var db = new SQLiteConnection("database.sqlite3"); </source> ===SQLite.Net 2.x=== <!-- <source lang="csharp"> var platform = new SQLite.Net.Platform.Generic.SQLitePlatformGeneric(); var db = new SQLiteConnection(platform, dbPath); </source> --> ==関連項目== ; 類似 * [[System.Data.SQLite]] - 純正の[[Windows]]で動く[[ADO.NET]]対応のSQLite実装 * [[Mono.Data.SQLite]] - [[Mono]]で動く[[ADO.NET]]対応のSQLite実装 * [[CSharp-SQLite]] - ピュアC#実装でどこでも動く。[[System.Data.SQLite]]完全互換を目指している。 * [[sqlite-net]] - ピュアC#実装でどこでも動く。[[ADO.NET]]対応などを切り捨て超軽量を目指している。 ==外部リンク== * https://github.com/praeclarum/sqlite-net ==参考文献== {{reflist}} {{stub}}
編集内容の要約:
MonoBookへの投稿はすべて、他の投稿者によって編集、変更、除去される場合があります。 自分が書いたものが他の人に容赦なく編集されるのを望まない場合は、ここに投稿しないでください。
また、投稿するのは、自分で書いたものか、パブリック ドメインまたはそれに類するフリーな資料からの複製であることを約束してください(詳細は
MonoBook:著作権
を参照)。
著作権保護されている作品は、許諾なしに投稿しないでください!
このページを編集するには、下記の確認用の質問に回答してください (
詳細
):
1たす1は?(全角で入力してください)
キャンセル
編集の仕方
(新しいウィンドウで開きます)
このページで使用されているテンプレート:
テンプレート:Reflist
(
編集
)
テンプレート:Stub
(
編集
)
本文の横幅制限を有効化/無効化