トップQs
タイムライン
チャット
視点
SQLite
ウィキペディアから
Remove ads
SQLite(エスキューライト[2][3]、エスキューエライト[4][5]、なお、作者のHippはエスキューエルアイト(/ˌɛsˌkjuːˌɛlˈaɪt/[6][7][8])と発音している)は、パブリックドメインの軽量な関係データベース管理システム (RDBMS) である。
概要
サーバとしてではなくアプリケーションに組み込んで利用されるデータベースである[9]。 一般的なRDBMSと違い、APIは単純にライブラリを呼び出すだけであり、データの保存に単一のファイルのみを使用することが特徴である。バージョン3.3.8からは全文検索のFTS1モジュールがサポートされた。その後 FTS2 - FTS3 と強化を続けバージョン3.7.4からはFTS4モジュールがサポートされている。
特徴
- SQL92の機能の多くを実装
- 著作権を放棄しパブリックドメインに帰している
- サーバではなくライブラリ
- ライブラリは数百KB程度のフットプリント
- Cランタイム以外の別途ライブラリを必要としない
- 管理ツールによるセットアップやメンテナンスを必要としない
- コマンドラインツールも使える
- バイトオーダに依存しない(2.6.3以降)、可搬性のある単一ファイル
- 最大128TiBまで
- ファイルを使わない、揮発性のインメモリデータベースとしても利用可能
- データ型を指定する必要がない
- サポートしている型は、Null/Integer/Real/Text/BLOBのみ
- Unicodeのサポート
- BLOBはメモリの許す限り
- ROWIDを持っている(ただし3.6.18以前は外部制約キーの仕組みがない)
- トランザクションのサポート
- ビューのサポート
- トリガーのサポート
- C言語を使って関数を追加できる
- Tclバインディングを配布キットに標準添付している
- PHP5、Python 2.5、Adobe AIRで標準サポート
- その他、C、C++、D、Curl、Perl、Ruby、Delphiなど多数のプログラミング言語用のバインディング
- 全文検索のFTS1モジュールがサポートされ、SQL文で全文検索インデックスに対して検索できる
- Android端末の標準ライブラリとして採用されている
Remove ads
解説
SQLiteとは?[10]
SQLiteは、小型で高速、自己完結型、高信頼性、フル機能を備えたSQLデータベースエンジンを実装したC言語ライブラリです。SQLiteは世界で最も利用されているデータベースエンジンです。SQLiteはすべての携帯電話とほとんどのコンピュータに組み込まれており、人々が毎日使用する無数のアプリケーションにもバンドルされています。
SQLiteを組み込んだアプリケーションの一例
- AndroidのデータストレージAPI
- Mozilla Firefox(142.x現在)[11]
- Mozilla Thunderbird(142.x現在)[12]
ストレージに互換性があれば、データベースインスタンスを格納したファイルはWindows、Linux等で共用可能である。一時的な利用ならばインメモリデータベースを割り当てることが出来る。ストレージまでネイティブコードで直接実行し、間になんらかのプロトコルやプロセス間通信を伴わないことにより、単一のトランザクション内におけるレイテンシをある程度削減することに成功している。一度トランザクションを開始するとストレージはロックされ、トランザクション中のセッションはキャッシュを有効利用して動作するため、高速にデータベースにアクセスすることができる。動的リンク、静的リンク共に対応しており、(3.50.x現在)静的リンクで実行ファイルを生成しても、おおむね700KB程度のフットプリントで、充実したSQLステートメントと束縛のないデータ型を利用することができる。
SQLiteのデータ型(3.50.x現在)
管理ツール
- 「sqlite」または「sqlite3」というコマンドラインユーティリティーが付属しており、CUIでSQLiteのデータを操作できる。
- 「Navicat for SQLite」はデータの編集やSQLクエリ、データモデリングのツールを備え、データ転送、インポート/エクスポート、データの同期、レポートなどの機能が提供されている。
- DB Browser for SQLite Windows, Mac OS, Linux, FreeBSD に対応したGUI管理ツール。ライセンスは Mozilla Public License Version 2。
ODBC
SQLiteのODBCドライバがサードパーティーから提供されている。SQLite 2とSQLite 3のバージョンがあり、SQLite 2向けには、さらにUTF-8対応版がある。
脚注
関連項目
書籍
外部リンク
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads