표 4-24. 롤 토토 기능
function | 반환 | 설명 |
---|---|---|
NextVal (텍스트) |
bigint | 사전 시퀀스 및 새로운 값을 반환 |
Currval (텍스트) |
bigint | 가장 최근에 얻은 반환 값NextVal |
setVal (텍스트,bigint) |
bigint | 시퀀스의 현재 값 설정 |
setVal (텍스트,bigint,부울) |
bigint | 시퀀스의 현재 값을 설정하고IS_CALLED플래그 |
이 섹션을 설명합니다PostgreSQL의 작동 기능롤 토토 개체. 롤 토토 객체 (또한 롤 토토 생성기 또는 단지 롤 토토)는 특별합니다 로 만든 단일 줄 테이블생성 순서. 롤 토토 객체는 일반적으로 생성하는 데 사용됩니다 테이블 행의 고유 식별자. 롤 토토 기능 연속적으로 얻기위한 간단하고 멀티 우스저 안전 방법을 제공하십시오 롤 토토 객체의 롤 토토 값.
크게 역사적 이유로 작동 할 순서는 시퀀스 기능 호출에 의해 텍스트-스트링에 의해 지정됩니다 논쟁. 처리와의 호환성을 달성합니다 일반 SQL 이름, 시퀀스 기능은 인수를 변환합니다 문자열이 두 번 인용되지 않는 한 소문자로. 따라서
NextVal ( 'foo')롤 토토에서 작동fooNextVal ( 'foo')롤 토토에서 작동fooNextVal ( ' "foo"')롤 토토에서 작동foo
물론 텍스트 인수는 간단한 문자뿐만 아니라 때때로 표현 유용한.
가용 순서 함수는 다음과 같습니다.
NextVal
시퀀스 객체를 다음 값으로 전진시키고 반환
그 가치. 이것은 원자 적으로 완료됩니다
서버 프로세스 실행NextVal
동시에, 각각은 안전하게 안전합니다
뚜렷한 롤 토토 값을받습니다.
Currval
가장 최근에 얻은 값을 반환NextVal
전류 에서이 롤 토토의 경우
서버 프로세스. (오류가보고 된 경우NextVal
이것을 요구 한 적이 없습니다
이 과정에서 시퀀스.) 이것이 바로이 사실에 주목하십시오
프로세스-로컬 값을 반환하면 예측 가능성이 있습니다
다른 서버 프로세스가 실행중인 경우에도 답변NextVal
한편.
setVal
롤 토토 객체의 카운터 값을 재설정합니다. 그만큼
2 개의 파라미터 양식이 롤 토토를 설정합니다last_value지정된 값에 대한 필드 및
설정IS_CALLEDField totrue, 다음을 의미합니다NextVal
값을 반환하기 전에 시퀀스. 3 파라미터에서
형태,is_called중 하나를 설정할 수 있습니다true또는거짓. 로 설정된 경우false, 다음NextVal
지정된 것을 정확하게 반환합니다
가치와 시퀀스 진보는
수행원NextVal
. 을 위한
예,
SELECT SETVAL ( 'foo', 42);Next NextVal ()는 43을 반환합니다.SELECT SETVAL ( 'foo', 42, true);위와 동일setval ( 'foo', 42, false); 선택Next NextVal ()는 42를 반환합니다.
결과는setVal
는 두 번째 값입니다
논쟁.
중요 :동시의 차단을 피하기 위해 동일한 순서에서 숫자를 얻는 거래, a
NextVal
운영은 절대 아닙니다 롤백; 즉, 일단 가치가 가져 오면 사용한 트랜잭션이라도 사용 된 것으로 간주됩니다.NextVal
나중에 중단. 이것 중단 된 거래가 사용하지 않을 수 있음을 의미"구멍"지정된 값 순서로.setVal
운영은 절대 없습니다 롤백.
기본 매개 변수로 롤 토토 객체가 생성 된 경우nextVal ()
전화가 돌아옵니다
하나로 시작하는 연속적인 값. 다른 행동은 될 수 있습니다
에서 특수 매개 변수를 사용하여 획득롤 토토 만들기명령; 명령 참조를 참조하십시오
자세한 정보는 페이지입니다.