テーブル名の一覧とテーブル定義を表示するコマンド

たまにしか使わないと忘れるのでメモ。

コマンド 説明
.tables テーブル名の一覧を表示する
.schema <テーブル名> テーブル定義を表示する
.exit sqlite3を終了する
sqlite3 コマンドにより db ファイルを開く。
root@generic:/ # sqlite3 /data/data/com.android.providers.contacts/datab
ases/contacts2.db
providers.contacts/databases/contacts2.db                                     <
SQLite version 3.7.11 2012-03-20 11:35:50
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> 
.tables によりテーブル名の一覧を表示する。
sqlite> .tables
.tables
_sync_state               phone_lookup              view_data_usage_stat
_sync_state_metadata      photo_files               view_entities
accounts                  properties                view_groups
agg_exceptions            raw_contacts              view_raw_contacts
android_metadata          search_index              view_raw_entities
calls                     search_index_content      view_stream_items
contacts                  search_index_docsize      view_v1_contact_methods
data                      search_index_segdir       view_v1_extensions
data_usage_stat           search_index_segments     view_v1_group_membership
default_directory         search_index_stat         view_v1_groups
deleted_contacts          settings                  view_v1_organizations
directories               status_updates            view_v1_people
groups                    stream_item_photos        view_v1_phones
mimetypes                 stream_items              view_v1_photos
name_lookup               v1_settings               visible_contacts
nickname_lookup           view_contacts             voicemail_status
packages                  view_data
sqlite> 
.schema <テーブル名> によりテーブル定義を表示する。
sqlite> .schema contacts
.schema contacts
CREATE TABLE contacts (_id INTEGER PRIMARY KEY AUTOINCREMENT,name_raw_co
ntact_id INTEGER REFERENCES raw_contacts(_id),photo_id INTEGER REFERENCE
S data(_id),photo_file_id INTEGER REFERENCES photo_files(_id),custom_rin
gtone TEXT,send_to_voicemail INTEGER NOT NULL DEFAULT 0,times_contacted 
INTEGER NOT NULL DEFAULT 0,last_time_contacted INTEGER,starred INTEGER N
OT NULL DEFAULT 0,pinned INTEGER NOT NULL DEFAULT 2147483647,has_phone_n
umber INTEGER NOT NULL DEFAULT 0,lookup TEXT,status_update_id INTEGER RE
FERENCES data(_id),contact_last_updated_timestamp INTEGER);
CREATE INDEX contacts_contact_last_updated_timestamp_index ON contacts(c
ontact_last_updated_timestamp);
CREATE INDEX contacts_has_phone_index ON contacts (has_phone_number);
CREATE INDEX contacts_name_raw_contact_id_index ON contacts (name_raw_co
ntact_id);
sqlite> 
.exit により sqlite3 を終了する。
sqlite> .exit
.exit
root@generic:/ #