이 문서는 지원되지 않는 버전의 PostgreSQL을위한 것입니다.
당신은에 대해 같은 페이지를 볼 수 있습니다PostgreSQL : 문서 : 17 : 9.17. 스포츠 사설 토토 사이트 베트맨 조작 기능버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

9.16. 시퀀스 조작 기능

이 섹션에서 작동하는 기능을 설명합니다사설 토토 사이트 개체, 사설 토토 사이트 생성기라고도합니다 또는 사설 토토 사이트 만. 사설 토토 사이트 객체는 특별한 단일 열 테이블입니다 로 생성PostgreSQL : 문서 : 9.2 : 토토 베이 작성. 사설 토토 사이트 객체는 일반적으로 생성하는 데 사용됩니다 테이블 행의 고유 식별자. 사설 토토 사이트 기능, 에 나열됨테이블 9-41, 획득하기위한 간단하고 멀티 우스터-안전 방법을 제공합니다 사설 토토 사이트 객체의 연속 사설 토토 사이트 값.

표 9-41. 사설 토토 사이트 기능

기능 반환 유형 설명
Currval (Regclass) bigint 가장 최근에 얻은 반환 값NextVal지정된 사설 토토 사이트
lastVal () bigint 가장 최근에 얻은 반환 값NextVal모든 사설 토토 사이트의 경우
NextVal (Regclass) bigint 사전 사설 토토 사이트 및 새로운 가치를 반환
setVal (regclass, bigint) bigint 사설 토토 사이트의 현재 값 설정
setVal (RegClass, bigint, 부울) bigint 사설 토토 사이트의 현재 값을 설정하고IS_CALLED플래그

사설 토토 사이트 함수에 의해 작동 할 사설 토토 사이트는 다음과 같습니다. A에 의해 지정regclass인수입니다 단순히의 사설 토토 사이트의 OIDpg_class시스템 카탈로그. 당신은 그럴 필요가 없습니다 그러나 이후로 Oid를 직접 찾아보세요.Regclass데이터 유형의 입력 변환기가 작업을 수행합니다 당신을 위한. 단일 따옴표로 동봉 된 사설 토토 사이트 이름을 작성하십시오 문자 그대로 상수처럼 보입니다. 호환성 평범한 취급SQL이름, 문자열이 소문자로 변환됩니다. 사설 토토 사이트 이름 주위에 이중 인용문이 포함되어 있습니다. 따라서:

NextVal ( 'foo')사설 토토 사이트에서 작동fooNextVal ( 'foo')사설 토토 사이트에서 작동fooNextVal ( ' "foo"')사설 토토 사이트에서 작동foo

필요한 경우 사설 토토 사이트 이름을 스키마 자격을 사용할 수 있습니다.

NextVal ( 'myschema.foo')운영myschema.fooNextVal ( ' "Myschema".foo')위와 동일NextVal ( 'foo')검색 경로 검색foo

참조섹션 8.18더 많은 에 대한 정보Regclass.

참고 :postgresql8.1, 인수 시퀀스 기능은 유형입니다.텍스트, 아니다Regclass및 위에서 설명한 것 텍스트 문자열에서 OID 값으로 변환하면 각 통화 중에 시간을 달성하십시오. 후진 호환성을 위해서는이입니다 시설은 여전히 ​​존재하지만 내부적으로는 이제 의 암묵적 강요텍스트toRegclass함수가 있기 전에 호출.

시퀀스 기능의 인수를 불안정한 문자열, 그것은 유형의 상수가됩니다Regclass. 이것은 정말로 단지 단지이기 때문입니다 OID는 원래 식별 된 사설 토토 사이트에도 불구하고 추적합니다 나중에 변경, 스키마 재 할당 등. this"조기 바인딩"행동이 일반적으로 바람직합니다 열 기본값 및보기에서 시퀀스 참조. 하지만 때때로 당신은 원할 수도 있습니다"늦게 제본"서열 참조가 해결되는 곳 런타임. 늦은 바인딩 행동을 얻으려면 상수를 강요하십시오 A로 저장텍스트대신 상수Regclass:

NextVal ( 'foo':: text)foo런타임을 찾아 보았습니다

늦은 바인딩은 지원되는 유일한 행동이었다PostgreSQL전에 릴리스 8.1, 따라서 의미론을 보존하기 위해이 작업을 수행해야 할 수도 있습니다. 오래된 응용 프로그램의.

물론 시퀀스 함수의 인수는 일정뿐만 아니라 표현. 텍스트 표현식 인 경우 그러면 암시 적 강요는 런타임을 초래합니다 조회.

가용 순서 함수는 다음과 같습니다.

NextVal

사설 토토 사이트 개체를 다음 값으로 전진시키고 반환 그 가치. 이것은 원자 적으로 완료됩니다 세션 실행NextVal동시에, 각각은 별개의 사설 토토 사이트를 안전하게받을 것입니다 값.

기본값으로 사설 토토 사이트 객체가 생성 된 경우 매개 변수, 연속NextVal전화는 연속으로 돌아갑니다 1로 시작하는 값. 다른 행동은 에서 특수 매개 변수 사용사설 토토 사이트 만들기명령; 보다 자세한 내용은 명령 참조 페이지입니다.

중요 :동시 차단을 피하기 위해 동일한 숫자를 얻는 거래 사설 토토 사이트, ANextVal작동은 결코 롤백되지 않습니다. 즉, 한 번 값입니다 가져 왔습니다. 를 한 거래NextVal나중에 중단. 이것은 그것을 의미합니다 중단 된 거래는 사용하지 않을 수 있습니다"구멍"지정된 순서로 값.

Currval

가장 최근에 얻은 값을 반환NextVal전류 의이 순서에 대해 세션. (오류가보고 된 경우NextVal이것을 요구 한 적이 없습니다 이 세션의 순서.) 이것은 a 세션-로컬 값은 예측 가능한 답변을 제공합니다 다른 세션이 실행되지 않았습니다NextVal현재 세션 이후 했다.

LastVal

가장 최근에 반환 된 값을 반환NextVal현재 세션에서. 이것 함수는 동일합니다Currval인수로서의 사설 토토 사이트 이름은 에 사용 된 마지막 순서NextVal현재 세션에서. 그것은 전화 오류LastValifNextVal아직 없었습니다 현재 세션에서 호출.

setVal

사설 토토 사이트 객체의 카운터 값을 재설정합니다. 그만큼 2 개의 파라미터 양식이 사설 토토 사이트를 설정합니다last_value지정된 값에 대한 필드 및 설정IS_CALLEDField totrue, 다음을 의미NextVal값을 반환하기 전에 사설 토토 사이트.Currval지정된 값. 3 개의 가라미터 형태로is_called둘 중 하나로 설정할 수 있습니다true또는거짓. true2 파라미터 형태. 로 설정된 경우거짓, 다음NextVal지정된 것을 정확하게 반환합니다 가치와 사설 토토 사이트 진보는 수행원NextVal. 또한,Currval이 경우에는 변경되지 않았습니다 (이것은 8.3 이전의 행동에서의 변화입니다). 예를 들어,

SELECT SETVAL ( 'foo', 42);다음NextVal43 복귀합니다.SELECT SETVAL ( 'foo', 42, true);위와 동일SELECT SETVAL ( 'foo', 42, false);다음NextVal42 복귀합니다.

결과는setVal는 두 번째 가치입니다 논쟁.

중요 :사설 토토 사이트이기 때문에 비 트랜잭션, 변경 사항setVal트랜잭션이 롤백됩니다.