PostgreSQL
について
| sequence 型の作成 | |
|---|---|
beniya=# create sequence a_seq beniya-# ; CREATE |
create sequence a_seq で SEQUENCE を作成する。 |
List of relations
Name | Type | Owner
-------------------+----------+--------
a_attr1 | table | beniya
a_seq | sequence | beniya
|
|
| select * from a_seq; | |
|---|---|
beniya=# sequence_name | last_value | increment_by | max_value | min_value | cache_value | log_cnt | is_cycled | is_called ---------------+------------+--------------+---------------------+-----------+-------------+---------+-----------+----------- a_seq | 1 | 1 | 9223372036854775807 | 1 | 1 | 1 | f | t (1 row) |
| select \d a_seq; で構造確認 | |||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Sequence "a_seq"
Column | Type
---------------+---------
sequence_name | name
last_value | bigint
increment_by | bigint
max_value | bigint
min_value | bigint
cache_value | bigint
log_cnt | bigint
is_cycled | boolean
is_called | boolean
|
|
beniya=# select nextval('a_seq');
nextval
---------
2
(1 row)
beniya=# select nextval('a_seq');
nextval
---------
3
(1 row)
beniya=# select nextval('a_seq');
nextval
---------
4
(1 row)
|
|
beniya=# select currval('a_seq');
currval
---------
4
(1 row)
beniya=# select currval('a_seq');
currval
---------
4
(1 row)
beniya=# select currval('a_seq');
currval
---------
4
(1 row)
|
|
beniya=# select setval('a_seq',26);
setval
--------
26
(1 row)
beniya=# select nextval('a_seq');
nextval
---------
27
(1 row)
beniya=# select last_value from a_seq;
last_value
------------
27
(1 row)
|
テーブルとよく似ているので UPDATE 文が使えるのかと実験してみたが beniya=# update a_seq SET last_value = 30; ERROR: You can't change sequence relation a_seq として UPDATE 文では変更出来ない。 |
| 目次に戻る |
2005/09/26 start ********* Last Update 2006/06/01 19:32 JST
| その他、お気づきの点がありましたら連絡先はこちらから |