누가 오라클 시퀀스를 나에게 문의를 해놔서 글을 남긴다.
간단하게 시퀀스는 일련번호이다.
그래서 db에 insert 할때 키값용으로 주로 사용된다.
mysql에 auto_increment 였나 하고 비슷하지만 mysql에서는 키값 증가용으로 사용될 뿐이고 오라클에서는 객체로 존재한다.
시퀀스를 만들어보자. (시퀀스 명은 exm_seq 라고 만들자)
시퀀스 만드는 쿼리가 뭐냐고 묻는다면 솔직히 난 모른다.
어느 프로젝트에 들어가더라도 개발툴 사용해서 개발하고 일일이 손코딩 하는사람없다.
토드같은 툴을 사용하면 새 시퀀스를 클릭해서 만들면 금방 만든다.
학교에서 혹은 학원에서 시퀀스를 이렇게 생성하고 저렇게 사용하고 캐쉬는 얼마정도 잡아줘야하고, 당신이 dba가 아닌이상 시퀀스만들어 달라고 요청하고 그걸로 끝이다.
간단하게 사용법만 기록해 놓는다.
시퀀스 증가 exm_seq.nextval
시퀀스 현재값 exm_seq.currval
예를 들면
insert into 테이블명 (키값) values (exm_seq.nextval)
을 입력하게 되면
현재 시퀀스값에서 하나 증가한 값이 키값으로 인서트 된다.
그리고 현재 인서트 된 값을 확인하려면
select exm_seq.currval from dual;
현재 세션에선 사용할 수 없다는 메시지와 함께 안된다.
나도 방금 해보고 알았다.
역시 토드 사용하는게 편하긴 한데 접속이 안되니 다른 방법을 찾아봤다.
select LAST_NUMBER FROM USER_SEQUENCES WHERE SEQUENCE_NAME='exm_seq';
역시 쿼리 하나 사용하는것보다, 툴 사용하는것이 훨씬 빨리 알게되는것을 다시한번 알게 돼었다.
'개발관련 > 데이터베이스' 카테고리의 다른 글
mysql 실행중인 쿼리 확인 및 중지 (0) | 2017.05.06 |
---|---|
mysql복구 (0) | 2016.06.27 |