【えすきゅーらいと】

SQLite とは?

最終更新:
💡 インストール不要の「持ち運べるデータベース」
📌 このページのポイント
SQLite(組み込みデータベース)の構造 アプリケーション SQLiteライブラリ サーバ不要・プロセス内蔵 SQL実行エンジン data.db(1ファイル) 通常のDB(MySQL等) アプリ クライアント DBサーバ 別プロセス ネットワーク通信が必要 サーバの管理が必要 軽量・シンプル 高機能・大規模向け
SQLiteのイメージ
ひよこ ひよこ
SQLiteってMySQLと何が違うの?
ペンギン先生 ペンギン先生
一番の違いは「サーバーが要らない」こと。MySQLはサーバーソフトを起動して使うけど、SQLiteは1つのファイルがそのままデータベースになるんだ。
ひよこ ひよこ
ファイル1つってどういうこと?
ペンギン先生 ペンギン先生
「data.db」みたいなファイルを作るだけで、その中にテーブルもデータも全部入るんだよ。コピーして移動もできるし、削除したら全部消える、とっても分かりやすい仕組みなんだ。
ひよこ ひよこ
じゃあSQLiteを使えば何でもできるの?
ペンギン先生 ペンギン先生
小さいものならね。スマホのアプリ内データや設定の保存、ちょっとしたツールには最適だよ。でも大勢が同時に書き込むWebサービスには向いてないんだ。
ひよこ ひよこ
なんで大きいサービスには使えないの?
ペンギン先生 ペンギン先生
SQLiteはファイルに書き込むとき他の処理をブロックしちゃうんだ。同時に何千人もアクセスするようなサービスだと、みんなが「ちょっと待って」状態になっちゃうんだよ。
ひよこ ひよこ
じゃあどのくらいの規模まで使えるの?
ペンギン先生 ペンギン先生
ここが中上級者でも判断が難しいところで、「読み込み中心で書き込みが少ない」なら意外と大きなサービスでも使えるんだ。実はFirefoxやChromeもブラウザ内部のデータ管理にSQLiteを使ってるよ。「書き込みが多いか少ないか」で判断するのがポイントなんだ。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
SQLiteって出てきたら「ファイル1つで動く軽量データベース」と思えばだいたいOK!
📖 おまけ:英語の意味
「SQLite」 = 軽量(lite)なSQL
💬 「liteは軽量」の意味。発音は「エスキューライト」が一般的だが「シークェライト」とも
← 用語集にもどる