시퀀스란?
사용(데이터 삽입)할 때 마다 일정한 값으로 자동 증가하는 객체
시퀀스 생성하는 방법
CREATE SEQUENCE [시퀀스이름];
시퀀스 사용하는 방법
위에서 만든 시퀀스를 사용해서 자동 증가하는 값을 보여주는 예제
현재 student 테이블엔 name, age, gender 세 개의 컬럼이 존재한다
여기서 숫자값인 age를 시퀀스로 자동증가시켜보자
자동으로 1이 들어간 것을 확인할 수 있다.
시퀀스 기본 시작값은 1이다.
그러면 데이터 값을 하나 더 넣어보자
이번에는 위 age보다 1증가한 2가 들어간 것을 볼 수 있다.
그런데 김구 선생 나이가 1은 좀 그렇다;;
시퀀스의 시작 값 설정하기
시퀀스의 시작 값을 설정해보자
*여기서 중요한 점은 시퀀스의 시작값을 조정할 땐 수정하는 것 보단
새로 만드는 것이 편리하고 더 낫다.
시퀀스 삭제하는 방법
테이블을 삭제하는 명령어와 같다
데이터들도 삭제해줬다
아 그리고 위에선 간단한 예시라 시퀀스명을 seq_1이라 했지만
시퀀스 이름은 규칙이 있다.
[테이블명]_seq 로 만든다.
우린 테이블명이 student이므로 student_seq로 만들면 된다
시작 값을 설정한 시퀀스
CREATE SEQUENCE [시퀀스명] START WITH [시작값];
여기선 홍길동 17세이니 시작 값을 18로 해줬다.
만들었던 시퀀스이름이 기억나지 않는다면 시퀀스 조회하기를 하면 된다.
SELECT sequence_name FROM seq;
그러면 우리가 만든 STUDENT_SEQ 시퀀스가 나온다.
그럼 이제 데이터를 넣어보자
시작 값으로 설정한 18이 age로 잘들어갔다.
그러면 데이터를 더 넣어보자.
역시나 시작 값에서 1증가한 19가 age로 잘들어갔다.
시퀀스 증가값 설정하기
그러면 마지막으로 증가 값을 조절해서 시퀀스를 만들어 보자.
CREATE SEQUENCE [시퀀스명] INCREMENT BY [증가값];
증가 값이 3인 시퀀스 student_seq2를 만들었다.
그러면 다시 데이터를 넣어보자
증가 값이 3씩 올라가 저장된 것을 확인할 수 있다.
'코딩탐방기' 카테고리의 다른 글
[Oracle] 오라클 데이터 조회 시 '####'으로 뜨는 에러 (0) | 2020.05.05 |
---|---|
[SQLD] 데이터베이스의 구조 (0) | 2020.04.28 |
[SQLD] 데이터 모델링이란? (0) | 2020.04.22 |
[Oracle] 오라클 계정 만드는 법 (0) | 2020.04.20 |
[SQLD] 오라클 데이터베이스 공부 1일차 (0) | 2020.04.14 |