DB Sequence 란?
- SEQUENCE 를 생성할 때 시작 ~ 최대값 지정하지 않으면 1부터 1씩 증가.
[출처] [ ORACLE ] 자동증가컬럼 (Sequence)|작성자 기절이
NOCACHE : 는 원칙적으로 메모리상에서 시퀀스 관리하지 않는 것
[출처] [ ORACLE ] 자동증가컬럼 (Sequence)|작성자 기절이
DB Sequence 권한 부여하기
다른계정도 호출할 수 있도록 시퀀스에 권한을 준다.
grant [select,sequence,alter] on 소유계정.시퀀스 to 대상계정;
- select : currval(현재값 조회)과 nextval(다음값 조회)을 사용할 수 있는 권한
- alter : sequence 변경권한을 줌
- sequence : alter와 select를 포함
주의할 점은 권한을 부여한 뒤, Synonym을 만들어서 써야 편함
(권한 부여 후 시퀀스 앞에 소유한 계정명을 빼먹어서 실행이 안되는 오류아닌 오류가 있었음)
[예제 소스]=========================================
seq_log라는 시퀀스를 생성한다.
조건은 1부터 999999999까지 자동으로 초기화 되도록 하고, 증가값은 1, 캐쉬는 사용하지 않는다.
create sequence seq_log
start with 1
maxvalue 999999999
increment by 1
cycle
nocache
;
증가 값을 조회한다.
select SEQ_LOG.NEXTVAL from dual
;
시퀀스를 삭제한다.
drop sequence seq_log
;
생성된 시퀀스를 모든 유저에게 조회권한 부여한다.
GRANT SELECT ON HOD.SEQ_LOG TO public
;
'프로그램개발' 카테고리의 다른 글
ORA-14400 오라클 오류 (0) | 2016.09.07 |
---|---|
아주 난감한 오류중에 하나인 오라클 ora-24784 오류에 대하여 (0) | 2016.03.11 |
닷넷을 이용한 윈폼 브라우저 만들기 (0) | 2015.05.21 |