用語集 最終更新 2026.07.01

SQLite

SQLite は、アプリに組み込んで使う、サーバー不要のリレーショナルデータベースです。最大の特徴は、データベース全体が1つのファイルで完結し、別途データベースサーバーを立ち上げる必要がないことです。ライブラリとしてアプリのプロセス内で直接動き、そのファイルを読み書きします。スマートフォン、主要ブラウザ、OS など世界中の端末に標準で組み込まれ、最も広く使われているデータベースエンジンのひとつです。

まず押さえたいポイント

  • 組み込み型(サーバーレス)で、常駐プロセスもネットワーク接続も要らない。
  • データベースが 1ファイルなので、バックアップも配布もファイルのコピーだけで済む。
  • MySQLPostgreSQL のようなクライアント・サーバー型とは設計思想が異なる。

どんな場面で使うか

  • スマホアプリ・デスクトップアプリのローカルデータ保存
  • IoT・組み込み機器のデータ保存(設定・ログ・キャッシュ)
  • 小〜中規模のWebサイト/アプリ(公式目安では1日10万ヒット未満なら問題なし)
  • CSV などのデータ分析や、1ファイルでのデータ受け渡し

よくある誤解や注意点

「SQLite はおもちゃ」という誤解がありますが、用途が合えば本番でも十分使える成熟したデータベースです。ただし弱点もあります。同時に書き込めるトランザクションは常に1つで、書き込みは直列化されます(読み込みは複数同時に可能)。WAL(Write-Ahead Logging)モードにすると読みと書きが互いをブロックしなくなりますが、WAL でも同時書き込みが増える制約は変わらず、また WAL は同一ホスト内でしか機能しません。そのため、複数のサーバーから同じデータベースを共有する用途には向きません(ネットワーク越しのファイル共有は破損の恐れ)。多数の同時書き込みや複数サーバー共有が必要なら、MySQLPostgreSQL のようなサーバー型を選びます。

SQLite とサーバー型データベースの違いや選び方は SQLiteとは?MySQL・PostgreSQLとの違いと使いどころ で詳しく整理しています。