【PostgreSQL】データベース情報を取得する(ビュー、トリガー、インデックス)
データベース一覧の取得
データベース一覧を取得するSQLを紹介します。
select
datname,
pg_encoding_to_char(encoding) --DBのエンコーディング
from pg_database;
ビュー一覧の取得
データベースのビューを取得するSQLです。
select * From pg_views
where schemaname = 'public';
シーケンス一覧の取得
データベースのシーケンスを取得するSQLです。
SELECT relname FROM pg_class
JOIN pg_namespace ON (pg_class.relnamespace = pg_namespace.oid)
WHERE relkind = 'S';
シーケンスを初期化するには次の文を使います。
select SETVAL('seq_name', 1 , false); --シーケンス「seq_name」を1に設定
トリガー一覧の取得
データベースのトリガーを取得するSQLです。
--トリガー一覧の取得
SELECT * FROM information_schema.triggers;
インデックス情報の取得
データベースのインデックスを取得するSQLです。
--idx_scan列は、インデックススキャンを使用した回数
select * From pg_stat_user_indexes;