SQLiteとは?他のデータベースとの違いも解説

 2020.09.11  株式会社システムインテグレータ

「SQLiteって何?」「SQLiteと他のデータベースは何が違う?」
そんな疑問に応えるべく、SQLiteの概要から特徴、利用するメリットについて紹介します。

SQLiteやデータベースに興味がある方は、ぜひご覧ください。

sql_textbook_blog

SQLiteとは?

SQLiteを一言でいうと、オープンソースで軽量のRDBMS(データベース管理システム)です。SQLと名前が似ているため、データベース操作言語の一種と思う方もいますが、SQLiteはデータベースです。

データベースには、OracleをはじめMicrosoft SQL Serverなどの商用データベースが存在します。また、SQLiteと同じくオープンソースのMySQLやPostgreSQLも有名です。

SQLiteは名前のとおり、簡易的な(ライトな)データベースであり、サーバーとしてではなくアプリケーションに組み込むことで利用します。データベースは大掛かりなシステムで利用される、という印象が強いものですが、SQLiteは簡易的に利用することが可能です。また、SQLiteはパブリックドメインのオープンソースであるため、ソースコードを自由に改変して再配布することもできます。

データベースを操作する言語「SQL」を理解していきたいという方は、以下の無料ダウンロード資料もご活用ください。
ビッグデータ時代の必須科目 SQLの教科書

SQLiteの3つの特徴

ここでは、SQLiteの特徴・メリットを3つ紹介していきます。

設定不要な自己完結型システム

SQLiteは設定不要で利用することができます。ほかのデータベースであれば、設定ファイルを用意して、プロセスの起動や停止、データベースインスタンスの設定が必要です。

しかし、SQLiteはサーバープロセスではなく、ライブラリとして使用できるため、設定が不要なのです。SQLiteは「自己完結型システム」と呼ばれており、依存性が非常に少ないことからこのような特徴を持ちます。

マルチプラットフォーム

自己完結型システムであり、外部ライブラリへの依存性が低いことから、マルチプラットフォームに対応しています。SQLiteが対応しているOSは次のとおりです。

  • Linux
  • Solaris
  • Windows
  • Mac
  • Android
  • iOS など

サーバーやパソコンOSだけでなく、スマホOSにも対応しています。

新規CTA
新規CTA

さらに、SQLiteは非常に軽量であり、本体ファイルサイズは600KB程度です。消費メモリ量も少ないため、処理性能が低いデバイスにも組み込めます。

データ型の指定を強制しない

SQLiteはデータ型の指定が緩い特徴を持ちます。通常のデータベースであれば、テーブルのカラムごとに「文字列型」「数値型」といったデータ型を、明確に定義します。データ型が指定されたテーブルカラムは、指定外のデータを格納できません。そして、ほとんどの場合はデータ型を指定しないとテーブルを作成できないものです。

しかし、SQLiteはデータ型を指定せずともテーブルを作成可能です。さらに、1つのテーブルカラムの中に、複数のデータ型を格納することもできます。

開発スピードを上げるために、簡易的にデータベースを用意したい場合などは、細かくデータ型を指定しないほうが早く構築できます。

もちろん、SQLiteはデータ型を指定することも可能であり、指定しない場合でも格納されたデータによってデータ型を判別しています。あえて指定せずとも、SQLiteが自動的に判別してくれるのです。

他のデータベースとの違い

SQLiteと他データベースとの違いをまとめると、次のようになります。

  • 軽量、コンパクト、省メモリ
  • ライブラリとして使用できる
  • 設定不要

ここまでに述べた特徴やメリットは、他のデータベースにはない大きな違いとなっています。しかし、他のデータベースと同じように利用することは可能です。

SQLiteは、中規模程度までのデータベースであれば、その他のデータベースと遜色がない処理性能を発揮すると言われています。また、「ギガバイト(GB)」「テラバイト(TB)」などの大容量データにも対応しており、利用は可能です。

SQLiteの使い方

SQLiteのダウンロード方法

・公式サイトにアクセス
SQLiteの公式サイトにアクセスし、「Download」のページに移ります。その後、対応したOSのインストーラーをダウンロードします。「Precompiled Binaries for Windows」と記載された場所の、自分のOSに適する拡張子がzipのファイルを選択しましょう。
https://www.sqlite.org/index.html

※OSによってインストール方法は変わる可能性があるため注意が必要

・zipファイルを解凍する
ダウンロードした拡張子がzipのファイルの中には、「sqdiff.exe」「sqlite3.exe」「sqlite3_analyzer.exe」の3種類のファイルがあります。SQLiteの本体のファイルは「sqlite3.exe」です。これらを解凍し、自分の配置したいフォルダに移しましょう。

・動作確認を行う
最後にきちんと動作できるか確認することが大切です。「sqlite3.exe」を実行し、動作が適切に行われているかチェック。

①データベース・テーブル作成

データベースを作成する
.open ファイル名

データベースファイルが作成されたかのチェック
.databases

テーブルを作成する
create table テーブル名(列名1 データ型,列名2 データ型);

テーブルが作成されたかのチェック
.table

②基本的なコマンド

ヘルプの表示

.help

設定情報の表示

.show

バックアップ

.output backup.dump

テーブルデータを出力したい場合

.dump テーブル名

復元する

.read backup.dump

CSV取り込み・区切り文字の変更

.separator ,

指定ファイルデータをテーブルに挿入

.import file table

テーブル一覧の表示

.tables

カラムの追加をする

alter table テーブル名 add column 新しいカラムの名前;

バージョンを表示する

select sqlite_version()

終了する

.exit

まとめ

SQLiteは軽量・コンパクトなオープンソースのデータベースです。設定不要・マルチプラットフォーム・データ型の指定が緩い、といった特徴やメリットを持っています。

性能に関しても、中小規模開発であれば、その他のデータベースと同等の処理性能を持っています。中小規模開発でデータベースが必要である場合は、SQLiteを選択することを考えてみてはいかがでしょうか。

新規CTA

RELATED POST関連記事


RECENT POST「SQL」の最新記事


SQL

2021年社内「SQLコンテスト」を開催しました!

SQL

「SQLのアンチパターン」3パターンを解説します!

SQL

データベース設計のアンチパターン、その対処法

SQL

データベースの正規化とは?

SQLiteとは?他のデータベースとの違いも解説

TOPSIC TOPへ