【最短1分】SQLiteでインデックスの構造を確認する2つの方法

 

★悩み★
・SQLite3において、作成済インデックス(index)の構造を確認できる?
・SQLite3のあるテーブルに作成されたインデックス(index)を確認したい。
・SQLite3でインデックス(index)の構造を確認する方法を知りたい。


こういった「悩み」に答えます。

 

★本記事の内容★
① SQLite3でインデックスの構造(スキーマ)を確認するための準備を解説
② SQLite3でインデックスの構造(スキーマ)を確認する2つの方法を解説



これからご紹介する「【最短1分】SQLiteでインデックスの構造を確認する2つの方法」を実践したことで、筆者は10分以内でSQLite3で作成されたインデックス(index)の構造(スキーマ)を確認できました。
 

記事の前半では「SQLite3でインデックスの構造(スキーマ)を確認するための準備」を解説します。
記事の後半では「SQLite3でインデックスの構造(スキーマ)を確認する2つの方法」を紹介します。
 

この記事を読み終えることで、「SQLite3で作成したインデックス(index)の構造(スキーマ)を確認する手順」を把握できるだけでなく、「schemaコマンドの構文」も把握した状態になります。
 

★SQLite3とは★
SQLiteは、「小型」/「高速」/「自己充足的」/「高信頼性」なSQLデータベースエンジンを実装したC言語ライブラリです。
ちなみに、SQLiteのメリットとデメリットに関して知りたい方には、以下の記事がオススメです。
>> 【要点】SQLiteとは?を解消!初心者向けに特徴から使い方を解説



ちなみに、筆者が約2週間でSQLite3を学んだ方法や手順について以下で公開しています。皆様の学習の参考になれば嬉しいです。

>> SQLite3に0から入門し基本操作を習得するまでのロードマップ


 

 


 

SQLite3でインデックスの構造(スキーマ)を確認するための準備


「SQLite3でインデックスの構造(スキーマ)を確認するための準備」に関してご紹介します。
 

★SQLite3でインデックスの構造(スキーマ)を確認するための準備の流れ★
手順1:SQLite3をインストール
手順2:インストールしたSQLite3の動作確認
手順3:SQLite3内にテーブルを作成
手順4:SQLite3のテーブルに対してインデックス(index)を作成



上記手順を実施することで、「SQLite3でインデックス(index)を作成するための準備」ができます。
 

上記の各手順は、以下の日時と環境で動作確認済みです。
動作確認済み日時:2022年7月27日
動作確認済み環境:Ubuntu 20.04.3 LTS



以降で、上記「SQLite3でインデックスの構造(スキーマ)を確認するための準備の流れ」の各手順に関してご説明します。
 

手順1:SQLite3をインストール

「手順1:SQLite3をインストール」に関して解説します。
 

SQLite3で作成済みインデックス(index)を確認するためにも、SQLite3をインストールしましょう。



「SQLite3をインストールする手順」に関しては、お使いのパソコンごとに以下の記事を参照しインストールしましょう。

>>【コピペOK】SQLite3をインストールする手順【Linux向け】

>>【コピペOK】SQLite3をインストールする手順【Ubuntu向け】

>>【最短5分】SQLiteをWindowsへインストールする方法(6枚で図解)

>>【コピペOK】SQLite3をインストールする手順【MacOS向け】



以上で、「手順1:SQLite3をインストール」は完了です。
 

手順2:インストールしたSQLite3の動作確認

「手順2:インストールしたSQLite3の動作確認」に関して解説します。
 

動作確認として、インストールしたSQLite3に接続できることを確認しましょう。



「SQLite3に接続する方法」に関しては、以下の記事「SQLite3へ接続する方法」の箇所をご覧ください。
 



以上で、「手順2:インストールしたSQLite3の動作確認」は完了です。
 

手順3:SQLite3内にテーブルを作成

「手順3:SQLite3内にテーブルを作成」に関して解説します。
 

SQLite3で作成済みインデックス(index)を確認するために、SQLite3内にテーブルを作成しましょう。



「SQLite3内にテーブルを作成する手順」に関しては、以下の記事をご覧ください。
 



以上で、「手順3:SQLite3内にテーブルを作成」は完了です。
 

以降の手順では、上記の記事で作成した「meibo」テーブルを想定として、手順を解説します。
 

手順4:SQLite3のテーブルに対してインデックス(index)を作成

「手順4:SQLite3のテーブルに対してインデックス(index)を作成」に関して解説します。
 

SQLite3で作成済みインデックス(index)を確認するために、SQLite3内のテーブルに対してインデックスを作成しましょう。



「SQLite3のテーブルに対してインデックス(index)を作成する手順」に関しては、以下の記事をご覧ください。
 



以上で、「手順4:SQLite3のテーブルに対してインデックス(index)を作成」は完了です。
 

上記の流れで、SQLite3でインデックスの構造(スキーマ)を確認するための準備ができました。


 

SQLite3でインデックスの構造(スキーマ)を確認する2つの方法


「SQLite3でインデックスの構造(スキーマ)を確認する2つの方法」に関してご紹介します。
 

★SQLite3でインデックスの構造(スキーマ)を確認する方法★
・schemaコマンドで作成済みインデックス(index)の構造を確認する方法
・sqlite_masterテーブルから作成済みインデックスの構造を確認する方法



上記の方法を実施することで、「SQLite3でインデックス(index)の構造(スキーマ)を確認」できます。
 

上記の各手順は、以下の日時と環境で動作確認済みです。
動作確認済み日時:2022年7月27日
動作確認済み環境:Ubuntu 20.04.3 LTS



以降で、上記「SQLite3でインデックスの構造(スキーマ)を確認する方法」の各項目に関してご説明します。
 

schemaコマンドで作成済みインデックス(index)の構造を確認する方法

「schemaコマンドで作成済みインデックス(index)の構造を確認する方法」に関して解説します。
 

schemaコマンドを実行することで、作成済みインデックス(index)の構造(スキーマ)を確認できます。



作成済みインデックス(index)の構造を確認する方法の1つとして、「schemaコマンドの実行」があります。schemaコマンドの「構文」は、以下となります。

【全テーブルの構造(スキーマ)を確認したい場合】
.schema

【指定したテーブルの構造(スキーマ)を確認したい場合】
.schema <テーブル名>



上記の構文をもとにして、以下の「schema」コマンドを実行し、指定したテーブルに作成されたインデックス(index)を確認しましょう。

# ↓ SQLite3に接続 ↓
$ sqlite3 testdb.sqlite3 
SQLite version 3.31.1 2020-01-27 19:55:54
Enter ".help" for usage hints.

# ↓ SQLite3内に存在するテーブルの構造(スキーマ)を確認 ↓
sqlite> .schema
CREATE TABLE meibo(id, name);
CREATE INDEX meibo_name_index on meibo(name);
sqlite> 



コマンド実行後、「CREATE INDEXが表示された」場合、「正常にschemaコマンドで作成済みインデックスの構造を確認できた」と判断できます。
 

★schemaコマンドのリファレンス★
schemaコマンドのリファレンスは、以下に公開されています。
参照:schemaコマンドのリファレンス(公式サイト)



以上が、「schemaコマンドで作成済みインデックス(index)の構造を確認する方法」となります。
 

sqlite_masterテーブルから作成済みインデックスの構造を確認する方法

「sqlite_masterテーブルから作成済みインデックスの構造を確認する方法」に関して解説します。
 

作成済みインデックス(index)の構造(スキーマ)は、sqlite_masterテーブルに登録されています。



作成済みインデックス(index)の構造を確認する方法の1つとして、「sqlite_masterテーブルから取得」があります。
以下のSQLを実行することで、sqlite_masterテーブルから作成済みインデックスの構造を確認できます。

select * from sqlite_master where type = 'index' and tbl_name = '<テーブル名>';



上記の構文をもとにして、以下のSQLを実行し、指定したテーブルに作成されたインデックス(index)を確認しましょう。

# ↓ SQLite3に接続 ↓
$ sqlite3 testdb.sqlite3 
SQLite version 3.31.1 2020-01-27 19:55:54
Enter ".help" for usage hints.

# ↓ 指定したテーブルに作成されたインデックス(index)を確認 ↓
sqlite> select * from sqlite_master where type = 'index' and tbl_name = 'meibo';
index|meibo_name_index|meibo|609921|CREATE INDEX meibo_name_index on meibo(name)



コマンド実行後、「CREATE INDEXが表示された」場合、「正常にsqlite_masterテーブルから作成済みインデックスの構造を取得できた」と判断できます。
 

★sqlite_masterテーブルの構造(スキーマ)について★
sqlite_masterテーブルの構造に関しては、以下で確認できます。
参照:sqlite_masterテーブルの構造(スキーマ)(公式サイト)



以上が、「sqlite_masterテーブルから作成済みインデックスの構造を確認する方法」となります。
 

上記「schemaコマンドの実行」と「sqlite_masterテーブルから取得」を実践することで、「作成済みインデックスの構造を確認」することができました。


 

【まとめ】SQLiteでインデックスの構造を確認する2つの方法【最短1分】


いかがでしたでしょうか?
「schemaコマンドの実行」と「sqlite_masterテーブルから取得」を実践することで、「SQLite3でインデックスの構造を確認できること」を解説し、以下の悩みを解決しました。
 

★悩み★
・SQLite3において、作成済インデックス(index)の構造を確認できる?
・SQLite3のあるテーブルに作成されたインデックス(index)を確認したい。
・SQLite3でインデックス(index)の構造を確認する方法を知りたい。



ぜひあなたも本記事を参考に「SQLite3でインデックスの構造を確認」をしてみてください。


 

 


 

コメント