Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- Linux
- Callback
- install
- Python
- 리뷰
- 책
- Close
- go언어
- window
- tcp
- http
- mutex
- range
- FOR
- Sync
- bitcoin
- C
- API
- write
- Golang
- channel
- package
- JavaScript
- c++
- 영화
- go
- json
- windows
- GO 언어
- File
Archives
- Today
- Total
Code Habit
SQL - SEQUENCE 정리 본문
데이터베이스에서 일련번호를 생성하기 위해 사용되는 것으로 시퀀스를 생성하면 기본키와 같이 순차적으로 증가하는 컬럼을 자동적으로 생성 할 수 있다. 시퀀스는 테이블과는 독립적으로 저장되고 생성되므로 하나의 시퀀스를 여러 테이블에서 쓸 수 있다.
- 시퀀스 생성
CREATE SEQUENCE behavior_id_seq
MINVALUE 1
MAXVALUE 9223372036854775807
INCREMENT BY 1
START WITH 1
CACHE 20
NOCYCLE;
|
- MINVALUE : 시퀀스가 가질 수 있는 최소 값 .
- MAXVALUE : 시퀀스가 가질 수 있는 최대 값.
- INCREMENT BY : 증가 값 설정.
- START WITH : 시작 값.
- CACHE n | NOCACHE : 메모리상의 시퀀스 값을 관리하도록 하는 것. 기본값은 20
- CYCLE | NOCYCLE : 시퀀스 값이 최대치를 넘어가면 시작값에서 다시 시작할지를 정함. NOCYCLE은 최대값을 넘어가면 에러를 발생.
- 시퀀스 사용
INSERT INTO my_table(id, name, behavior) VALUES(behavior_id_seq.NEXTVAL, '김지성', '시작');
|
- 시퀀스 확인
SELECT behavior_id_seq.CURRVAL FROME DUAL;
|
NEXTVAL을 먼저 사용해야 CURRVAL을 사용할 수 있다. 만약 NEXTVAL 사용 전 CURRVAL을 사용하면 오류가 발생한다.
- 시퀀스 수정
ALTER SEQUENCE behavior_id_seq
MINVALUE 100
MAXVALUE 4000
INCREMENT BY 2
CACHE 10
|
- 시퀀스 제거
DROP behavior_id_seq;
|