¾�ΥС�������ʸ�� �� 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9.6 | 9.5 | 9.4 | 9.3 | 9.2 | 9.1 | 9.0 | 8.4 | 8.3 | 8.2 | 8.1 | 8.0 | 7.4 | 7.3 | 7.2

9.16. �����������ؿ�

�������󥹥��֥������ȡ��������󥹥����ͥ졼���Ȥ�ñ�˥������󥹤Ȥ�ƤФ�롢����Ǥ��������󥹥��֥����������Ф��黻��Ԥ��ؿ��ˤĤ����������ޤ����������󥹥��֥������Ȥ��ü�ʰ�ԥơ��֥�ǡ�CREATE SEQUENCE�Ǻ�������ޤ����������󥹥��֥������Ȥϰ���Ū�˥ơ��֥�ιԤ˰�դμ��̻Ҥ��������뤿��˻��Ѥ���ޤ���ɽ9-41����󤵤�Ƥ��륷�����󥹴ؿ��ϡ��������󥹥��֥������Ȥ���Ϣ³�������������ͤ�������뤿��Ρ��ʰפǥޥ���桼�����б������ؿ��Ǥ���

ɽ 9-41. �������󥹴ؿ�

�ؿ����������
currval(regclass)bigint���ꤵ�줿�������󥹤��Ф�nextval������줿�ǿ����ͤ��֤�
lastval()bigint�ɤ�ʥ������󥹤��Ф��ƤǤ�nextval�ˤ��Ǥ�Ƕ�������줿�ͤ��֤�
nextval(regclass)bigint�������󥹤�ʤᡢ�������ͤ��֤�
setval(regclass, bigint)bigint�������󥹤θ����ͤ����ꤹ��
setval(regclass, bigint, boolean)bigint�������󥹤θ����ͤ�is_called�ե饰�����ꤹ��

�������󥹴ؿ��ˤ������륷�����󥹤�regclass�����ǻ��ꤵ�졢�����Ƥ����pg_class�����ƥ५��������Υ������󥹤�OID�˲᤮�ޤ��󡣼��Ȥ�OID�򸡺����ƤϤ����ޤ��󤬡�regclass�ǡ������������Ѵ��郎���äƤ��κ�Ȥ�ԤäƤ���ޤ�����ƥ��ؿ��Τ褦�˸����뤹��褦�ˤ��뤿�ᡢñ�������dz��줿��������̾�򵭽Ҥ�������Ǥ����̾��SQL��̾�ΤǤ����Ȥθߴ��Τ��ᡢʸ����ϥ�������̾����Ű�����dz���Ƥ���ʳ�����ʸ�����Ѵ�����ޤ�����äơ��ʲ��Τ褦�ˤʤ�ޤ���

nextval('foo')      operates on sequence foo
nextval('FOO')      operates on sequence foo
nextval('"Foo"')    operates on sequence Foo

ɬ�פǤ���С��ʲ��Τ褦�˥�������̾�򥹥����ޤǽ������뤳�Ȥ��Ǥ��ޤ���

nextval('myschema.foo')     operates on myschema.foo
nextval('"myschema".foo')   same as above
nextval('foo')              searches search path for foo

regclass�˴ؤ��ƤΤ��ܺ٤ʾ������8.18�򻲾Ȥ��Ƥ���������

����: PostgreSQL 8.1�����ˤ����Ƥϡ��������󥹴ؿ��ΰ�����regclass���ǤϤʤ���text���ǡ������ƾ嵭�Υƥ�����ʸ���󤫤�OID�ͤؤ��Ѵ��Ϥ��줾��θƤӽФ��¹Ի��˵�����ޤ����������ߴ����Τ��ᡢ���λ��ȤߤϤޤ�¸�ߤ��ޤ���������Ū�ˤϴؿ����¹Ԥ��������text����regclass�ؤΰ���Ū�������Ѵ��Ȥ��Ƹ��߽�������Ƥ��ޤ���

����ΤޤޤΥ�ƥ��ʸ����Ȥ��ƥ������󥹴ؿ��ΰ����򵭽Ҥ�����ϡ�regclass�ǡ�����������ˤʤ�ޤ��������ñ��OID�ʤΤǡ����̾���դ����ƤӹԤ�줿�Ȥ����������ޤκƳ�꿶��Ȥ��˷���餺���ǽ�����ꤵ�줿�������󥹤�����Ѥ��ޤ�������"���«��"��ư��ϡ��̾���Υǥե���Ȥȥӥ塼���Ȥ��륷�����󥹤ˤȤä�̥�Ϥ�����ޤ��������������ޤˤϼ¹Ի��˥������󥹻��Ȥ���褵���褦��"ưŪ«��"��˾�ޤ�ޤ���ưŪ«����ư�������ˤϡ������regclass�ǤϤʤ�text����Ȥ��Ƥ����������¸�����ޤ���

nextval('foo'::text)      foo is looked up at runtime

ưŪ«����PostgreSQL�Υ�꡼��8.1�����ǥ��ݡ��Ȥ��줿ư��Ǥ��ä��Τǡ�����Υ��ץꥱ�������Υ��ޥ�ƥ��������ݤ�������礳�Τ褦�ˤ���ɬ�פ����뤫�⤷��ޤ���

������󡢥������󥹴ؿ��ΰ���������ȤȤ�ˡ�ɾ�����Ǥ��뤳�Ȥ��ǽ�Ǥ����⤷�ƥ����ȼ��ξ��ϰ���Ū�������Ѵ����¹Ի��������Ѥ����ޤ���

���ѤǤ��륷�����󥹴ؿ��ˤϰʲ��Τ�Τ�����ޤ���

nextval

�������󥹥��֥������Ȥ򤽤μ����ͤ˿ʤᡢ�����ͤ��֤��ޤ�������ϼ�ưŪ�˽�������ޤ���ʣ���Υ��å����Ʊ����nextval��¹Ԥ����Ȥ��Ƥ⡢���줾��Υ��å����ϸ��̤Υ��������ͤ�ְ㤤�ʤ��������ޤ���

�ǥե���ȤΥѥ�᡼���ˤ�äƥ������󥹥��֥������Ȥ���������Ƥ���ʤ顢����³��nextval�ƤӽФ��ϣ�����Ϥޤ�Ϣ³Ū���ͤ��֤��ޤ�������¾��ư���CREATE SEQUENCE���ޥ�ɤ����̤ʥѥ�᡼������Ѥ��Ƥ����뤳�Ȥ���ǽ�Ǥ������ܤ����ϥ��ޥ�ɤΥ�ե���󥹥����ɤ򻲾Ȥ���������

���׹���: Ʊ��Υ������󥹤�����ͤ��������Ʊ���¹ԥȥ�󥶥������Ʊ�ΤΥ֥��å����ɻߤ��뤿�ᡢnextval�黻�Ϸ褷�ƥ�����Хå�����ޤ��� �ȸ������Ȥϡ����Ȥ�nextval��¹Ԥ����ȥ�󥶥�����󤬸�˥��ܡ��Ȥ����Ȥ��Ƥ⡢�ͤ����ټ��Ф��줿�餽��ϻ��Ѥ��줿��Τȹͤ��ޤ��� �Ĥޤꡢ���ܡ��Ȥ��줿�ȥ�󥶥������ϡ�������Ƥ�줿�ͤΥ����������̤���Ѥ�"��»"��Ĥ���ǽ��������ޤ���

currval

���ߤΥ��å����ˤ����ơ����Υ������󥹤���nextval�ˤ�äƼ������줿ľ����ͤ��֤��ޤ��ʥ��å������Ǥ��Υ������󥹤��Ф�nextval���ƤФ�Ƥ��ʤ����ˤϡ����顼����𤵤�ޤ��ˡ�����ϥ�������Υ��å�����ͤ��֤����Ȥ��顢���ߤΥ��å���󤬼¹Ԥ��Ƥ����̤Υ��å����nextval��¹Ԥ��Ƥ⤷�ʤ��Ƥ⡢ͽ�ۤ˰��ʤ�������⤿�餷�ޤ���

lastval

���ߤΥ��å�����nextval���ᤵ���ǿ����ͤ��֤��ޤ������δؿ��ϡ����ߤΥ��å��������nextval�ˤ�äƻ��Ѥ����Ǹ�Υ������󥹤��ͤ�ե��å���������Ȥ��ƤΥ�������̾���뤳�Ȥ�����ơ�currval��Ʊ���Ǥ������ߤΥ��å�����nextval��̤���ƤФ�Ƥ��ʤ���Х��顼�ˤʤ�ޤ���

setval

�������󥹥��֥������Ȥη׿��ͤ�ꥻ�åȤ��ޤ������ĤΥѥ�᡼�����ͭ��������Ǥϡ��������󥹤�last_value�ե�����ɤ���ꤵ�줿�ͤ����ꤷ��is_called�ե�����ɤ�true�ʿ��ˤ����ꤷ�ޤ������ΰ�̣�ϡ�����nextval���ͤ��֤����˥������󥹤�ʤ��Ȥ������ȤǤ���currval����𤵤줿�ͤ���ꤵ�줿�ͤ����ꤵ��ޤ������ѥ�᡼�������ξ�硢is_called��true�ʿ��ˤ⤷����false�ʵ��ˤ����ꤹ�뤳�Ȥ��Ǥ��ޤ���true�ʿ��ˤϣ��ѥ�᡼��������Ʊ�����̤�����ޤ���false�ʵ��ˤ����ꤵ�줿��硢����nextval�����ꤵ�줿���Τ��ͤ��֤����������󥹤οʹԤϰ���³��nextval����Ϥޤ�ޤ�������ˤ��ξ��ʤ����8.3������ư�����ѹ��ˡ�currval����𤵤줿�ͤ��ѹ�����ޤ����㤨�С�������Ǥ���

SELECT setval('foo', 42);           Next nextval will return 43
SELECT setval('foo', 42, true);     Same as above
SELECT setval('foo', 42, false);    Next nextval will return 42

setval�ˤ�ä��֤�����̤�ñ�ˤ�����2���ܤΰ������ͤǤ���

���׹���: �������󥹤���ȥ�󥶥�����ʥ�˰����뤿�ᡢsetval�ˤ���ѹ��ϡ����Υȥ�󥶥�����󤬥�����Хå����줿�Ȥ��Ƥ� �������ޤ���