使用できるもの:
select sequence_schema, sequence_name
from information_schema.sequences;
これにより、アクセス可能なシーケンスのリストが返されます。 所有ではなく、現在のユーザーに 彼によって。
所有のシーケンスを一覧表示する場合 現在のユーザーがpg_class
に参加する必要があります 、pg_namespace
およびpg_user
:
select n.nspname as sequence_schema,
c.relname as sequence_name,
u.usename as owner
from pg_class c
join pg_namespace n on n.oid = c.relnamespace
join pg_user u on u.usesysid = c.relowner
where c.relkind = 'S'
and u.usename = current_user;
Postgresでは、ユーザーは「自分の」だけでなく、複数のスキーマでオブジェクト(シーケンスなど)を所有できるため、シーケンスが作成されたスキーマを確認する必要もあります。
マニュアルの詳細:
- https://www.postgresql.org/docs/ current / static / infoschema-sequences.html
- https://www.postgresql.org/ docs / current / static / catalog-pg-class.html