SQLiteは、リレーショナルデータベース管理システム(RDBMS)を提供するソフトウェアライブラリです。SQLiteのユニークな特徴は「サーバーレス」であることで、独立したサーバープロセスを持たない自己完結型のシステムであることです。アプリケーション自体に組み込まれていることが多く、ディスクファイルに直接データを読み書きするため、デスクトップアプリケーション、ウェブサイト、モバイルアプリなど、小規模から中規模のアプリケーションに最適な軽量データベースソリューションとなっています。
他のRDBMSと同様に、SQLiteはSQL(Structured Query Language)を使用してデータを管理します。SQLiteはデータをテーブルで整理し、各テーブルにはカラム(フィールド)があり、データは行(レコード)に格納されます。
例えば、地元の小さな図書室のモバイルアプリを開発するとします。このアプリでは Members
テーブルと Books
テーブルを持つSQLiteデータベースを使用できます。
Members
テーブルには次のようなフィールドがあります。
Members
テーブルの各行は異なるメンバーを表します。
Books
テーブルには以下のようなフィールドを持つことができます。
Books
テーブルの各行はそれぞれ異なる本を表すことになります。
SQLiteを使用すると、新しいメンバーや本を挿入したり、本のステータスを更新したり、利用可能なすべての本や特定のメンバーがチェックアウトしたすべての本のリストを取得するなどの操作を実行できます。
SQLiteはアプリケーションに組み込まれているため、アプリケーションを自立させ、別のデータベースサーバーを管理することに伴う複雑さを軽減できます。組み込みシステムや大規模なアプリケーションで、より揮発性の低いデータや設定データを保存するためのデータベースとしてよく使われています。Firefox、Chrome、Skypeなどの人気アプリケーションはすべて、データ保存の必要性の一部にSQLiteを使用しています。