Автоматизация стандартных процедур
Просмотр последовательностей в базе данных
Команда \d клиента psql показывает, к какому типу относится тот или иной объект базы данных – последовательность, таблица, представление или индекс. Для получения более конкретной информации можно воспользоваться командой \ds, выводящей список всех последовательностей в текущей базе данных. Пример:
booktown=# \ds List of relations Name Type | Owner book_ids | sequence | manager shipments_ship_id_seq j sequence | manager subject_ids j sequence | manager (3 rows)
К последовательности также можно обратиться командой SELECT, как к таблице или представлению (хотя такая возможность используется относительно редко). При составлении запроса к последовательности в списке выборки вместо полей указываются атрибуты последовательности, перечисленные в табл. 7.1.
Таблица 7.1. Атрибуты последовательностей.
Атрибут | Тип |
---|---|
sequence name | name |
last_value | integer |
increment by | integer |
max value | integer |
min value | integer |
cache value | integer |
log cnt | integer |
is_cycled | "char" |
is called | "char" |
В листинге 7.29 приведен пример запроса к последовательности shipments_ship_id_seq. Запрос возвращает атрибуты last_value (текущее значение последовательности) и increment_by (приращение при очередном вызове nextval ()).
Листинг 7.29. Вывод атрибутов последовательности.
booktown=# SELECT 1ast_value, increment_by booktown-# FROM shipments_ship_id_seq; last_value increment_by 0 | 1 (1 row)
Запрос обращен к только что созданной последовательности, поэтому атрибут last_value остался равным нулю.