오라클 오류
ORA-02289: 시퀀스가 존재하지 않습니다.
시퀀스를 만들지도 않고 시퀀스 쓸려고 해서 생기는 오류임.
오라클에서 mysql처럼 auto-increment를 구현하기 위해서는
시퀀스를 따로 생성해주어야 함.
사용할 시퀀스 이름을 SQ_CINDY라고 한다면,
DEFAULT 시퀀스 생성 하기
CREATE SEQUENCE SQ_CINDY;
옵션줘서 시퀀스 생성 하기
CREATE SEQUENCE SQ_CINDY
increment by n <== 증가값 (default 1)
start with n <== 시작값 (default 1)
maxvalue n | nomaxvalue <== 최고값 (nomaxvalue default 10*E27)
minvalue n | nominvalue <== 최소값 (nominvalue default 1)
cycle | nocycle <== 최소,최고값이후 값의 생성유무 (default nocycle)
cache | nocache <== 메모리에 유지할 값의 수 (default 20)
;
출처: https://jaehoon0210.tistory.com/entry/oracle-sequence-생성-삭제-조회 [김군...]
생성한 시퀀스가 잘 만들어졌는지 확인하면
전체 시퀀스로 SELECT 해서 방금 만든 시퀀스 찾아 보면 됨
SELECT * FROM USER_SEQUENCES;
마지막으로 시퀀스 삭제 하기
DROP SEQUENCE SQ_CINDY;
사용할 때는
INSERT문 안에서
시퀀스 컬럼의 VALUE 값을
SQ_CINDY.NEXTVAL 이렇게 주면 됨. (하나씩 증가시킨다는 가정하에)
휴
알록달록 이쁘게 한다고 힘들었당.
'개발 > DB' 카테고리의 다른 글
[ORACLE] MERGE INSERT UPDATE 문 (0) | 2019.10.02 |
---|---|
[ORACLE] 월별 사용자 COUNT 조회하기 (0) | 2019.08.16 |
[ORACLE] Ibatis 소스와 DB툴 select 쿼리 리턴 결과가 다를 때 (0) | 2019.08.12 |
[ORACLE] NVL, DECODE (0) | 2019.01.01 |
[ORACLE] ORA-00979: GROUP BY 표현식이 아닙니다 (0) | 2018.12.02 |