이 문서는 지원되지 않는 PostgreSQL 버전에 대한 것입니다.
다음에 대한 동일한 페이지를 보고 싶을 수도 있습니다.PostgreSQL : 문서 : 17 : 롤 토토 생성버전 또는 위에 나열된 다른 지원 버전 중 하나를 사용하세요.

만들기 순서

이름

CREATE SEQUENCE  --  새 스포츠 토토 사이트 정의 발전기

시놉시스

[ 임시 생성 | 온도 ] 순서시퀀스 이름[ 증분증분]
    [ 최소값최소값] [ MAXVALUE최대값]
    [ 시작시작] [ 캐시캐시] [ 주기 ]

입력

임시 또는 임시

지정되면 시퀀스 개체는 다음에 대해서만 생성됩니다. 이 세션은 세션에서 자동으로 삭제됩니다. 출구. 동일한 이름을 가진 기존 영구 시퀀스는 다음과 같습니다. 임시 동안에는 (이 세션에서) 표시되지 않습니다. 순서가 존재합니다.

시퀀스 이름

생성될 시퀀스의 이름.

증분

증분증분절은 선택 과목. 양수 값은 오름차순을 만듭니다. 순서, 음수 순서는 내림차순입니다. 그만큼 기본값은 1입니다.

최소값

선택적 조항MINVALUE최소값시퀀스가 생성할 수 있는 최소값을 결정합니다. 그만큼 기본값은 오름차순 및 내림차순의 경우 1 및 -2^63-1입니다. 순서입니다.

최대값

선택적 조항MAXVALUE최대값시퀀스의 최대값을 결정합니다. 그만큼 기본값은 오름차순 및 내림차순의 경우 2^63-1 및 -1입니다. 순서입니다.

시작

선택사항시작시작활성화 어디서든 시작할 수 있는 시퀀스입니다. 기본 시작 값은최소값오름차순용 스포츠 토토 사이트 및최대값내림차순인 경우.

캐시

캐시캐시옵션 활성화 사전 할당되어 메모리에 저장되는 시퀀스 번호 더 빠른 액세스를 위해. 최소값은 1입니다(하나의 값만 한 번에 생성될 수 있습니다(예: 캐시 없음). 기본값이기도 합니다.

사이클

선택적 CYCLE 키워드를 사용하여 다음을 활성화할 수 있습니다.최대값또는최소값다음 사람이 도달했습니다. 각각 오름차순 또는 내림차순입니다. 만약 한도에 도달하면 생성되는 다음 숫자는최소값또는최대값입니다. 없이 CYCLE, 한도 도달 후다음값호출은 오류를 반환합니다.

출력

만들기

명령이 성공하면 메시지가 반환됩니다.

오류: 관계 '시퀀스 이름' 이미 존재한다

지정된 스포츠 토토 사이트가 ​​이미 존재하는 경우.

오류: 정의순서: 최소값(시작)은 할 수 없습니다 = 최대값(최대)

지정된 시작 값이 범위를 벗어난 경우.

오류: 정의순서: 시작 값(시작)은 할 수 없습니다 < MINVALUE ()

지정된 시작 값이 범위를 벗어난 경우.

오류: 정의순서: 최소값()는 불가능합니다. = 최대값(최대)

최소값과 최대값이 일관성 없는.

설명

스포츠 토토 사이트 생성새 항목을 입력합니다 현재 데이터베이스에 시퀀스 번호 생성기를 추가합니다. 이것 새로운 단일 행 테이블을 생성하고 초기화하는 작업이 포함됩니다. 이름시퀀스 이름. 발전기 명령을 실행하는 사용자가 소유하게 됩니다.

스포츠 토토 사이트가 생성된 후 함수를 사용합니다.다음값, 곡선그리고setval시퀀스에서 작동합니다. 이것들 함수는에 문서화되어 있습니다.사용자의 가이드.

시퀀스를 직접 업데이트할 수는 없지만 다음과 같은 쿼리

SELECT * FROM시퀀스 이름;

시퀀스의 매개변수와 현재 상태를 검사합니다. ~ 안에 특히,마지막_값필드의 스포츠 토토 사이트는 백엔드 프로세스에 의해 할당된 마지막 값을 보여줍니다. (물론 이 값은 인쇄될 때 더 이상 사용되지 않을 수 있습니다. 다른 프로세스가 활발하게 수행되고 있는 경우다음발호출.)

주의

다음과 같은 경우 예상치 못한 결과를 얻을 수 있습니다.캐시1보다 큰 설정은 동시에 사용될 시퀀스 객체에 사용됩니다. 여러 백엔드로. 각 백엔드는 할당하고 한 번 액세스하는 동안 연속 시퀀스 값을 캐시합니다. 시퀀스 객체를 늘리고 시퀀스 객체의 증가마지막_값따라서. 그 다음에, 다음캐시-1 사용다음값해당 백엔드 내에서 건드리지 않고 미리 할당된 값을 반환하기만 하면 됩니다. 공유 객체. 따라서 할당되었지만 사용되지 않은 숫자는 해당 세션이 종료되면 세션 내 정보가 손실됩니다. 또한 여러 백엔드가 보장되지만 고유한 시퀀스 값을 할당하면 해당 값은 다음과 같을 수 있습니다. 모든 백엔드가 완료되면 순서대로 생성되지 않습니다. 존경받는. (예를 들어,캐시10으로 설정, 백엔드 A 값 1..10을 예약하고 반환할 수 있습니다.다음값=1이면 백엔드 B가 예약할 수 있음 값 11..20 및 반환다음값18948_19020캐시하나의 설정은 안전합니다. 가정해 보세요다음값값 순차적으로 생성됩니다. 와 함께캐시1보다 큰 설정 오직 다음을 가정해야 합니다.다음값값은 모두 고유하지만, 순전히 순차적으로 생성됩니다. 또한,마지막_값반영됩니다 백엔드에 의해 예약된 최신 값(백엔드 여부에 관계없음) 에 의해 아직 반환되었습니다.다음값. 또 다른 고려 사항은 에이setval다음에 실행됨 시퀀스가 완료될 때까지 다른 백엔드에서 이를 알 수 없습니다. 이미 할당된 값을 모두 사용했습니다. 캐시되었습니다.

참고

사용드롭 순서제거하려면 순서.

시퀀스는 다음을 기반으로 합니다.비긴트산술이므로 범위는 범위를 초과할 수 없습니다. 8바이트 정수(-9223372036854775808 ~ 9223372036854775807). 일부 오래된 플랫폼에서는 8바이트 정수에 대한 컴파일러 지원(이 경우) 시퀀스는 일반을 사용합니다.정수산술 (범위 -2147483648 ~ +2147483647).

언제캐시보다 큼 첫째, 각 백엔드는 자체 캐시를 사용하여 사전 할당된 데이터를 저장합니다. 숫자. 캐시되어 있지만 현재 사용되지 않는 번호 세션이 손실되어 다음과 같은 결과가 발생합니다."구멍"순서대로.

사용법

오름차순 스포츠 토토 사이트 생성연재, 101부터 시작:

CREATE SEQUENCE 일련번호 시작 101;

이 순서에서 다음 숫자를 선택하세요:

SELECT nextval('연속');

다음 값
-------
    114

INSERT에서 다음 순서를 사용하십시오:

배포자 VALUES에 삽입(nextval('serial'), 'nothing');

COPY FROM 후 스포츠 토토 사이트 값 업데이트:

시작;
    'input_file'에서 배포자를 복사하세요.
    SELECT setval('serial', max(id)) FROM 배포자;
끝;

호환성

SQL92

스포츠 토토 사이트 생성PostgreSQL언어 확장. 없습니다스포츠 토토 사이트 생성성문SQL92.