ここではOracleのシーケンスの情報を確認するSQL文について紹介します。
目次
シーケンスの一覧を取得する
ユーザーがアクセスできるシーケンスを取得する
現行のユーザーがアクセスできるシーケンスを取得するには、「ALL_SEQUENCES」を参照します。
SELECT * FROM ALL_SEQUENCES ORDER BY SEQUENCE_OWNER, SEQUENCE_NAME;
ALL_SEQUENCESで取得できる主な情報は以下の通りです。
列名 | 説明 |
---|---|
SEQUENCE_OWNER | シーケンスの所有者 |
SEQUENCE_NAME | シーケンスの名前 |
MIN_VALUE | シーケンスの最小値 |
MAX_VALUE | シーケンスの最大値 |
INCREMENT_BY | シーケンスが増やされるときの増分値 |
CYCLE_FLAG | 限度に達したときに、順序の繰返しを実行するかどうか(Y | N) |
ORDER_FLAG | 順序番号が順番に生成されるかどうか(Y | N) |
CACHE_SIZE | キャッシュする順序番号の数 |
LAST_NUMBER | 最後にディスクに書き込まれる順序番号 |
データベース内のシーケンスを取得する
データベース内のシーケンスを取得するには、「DBA_SEQUENCES」を参照します。
SELECT * FROM DBA_SEQUENCES ORDER BY SEQUENCE_OWNER, SEQUENCE_NAME;
DBA_SEQUENCESで取得できる情報は、ALL_SEQUENCESと同じです。
ユーザーが所有するシーケンスを取得する
現行のユーザーが所有するシーケンスを取得するには、「USER_SEQUENCES」を参照します。
SELECT * FROM USER_SEQUENCES ORDER BY SEQUENCE_NAME;
USER_SEQUENCESで取得できる情報はSEQUENCE_OWNER列を除き、ALL_SEQUENCESと同じです。
以上、Oracleのシーケンスの情報を確認するSQL文について解説しました。