일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 | 31 |
- 자바
- 공부
- Eclipse
- Android
- JavaScript
- 코틀린
- 별5개
- 3박4일
- error
- 친구랑
- 재밌당
- 1박2일
- db
- 오류해결
- AndroidStudio
- 안드로이드
- 개발
- 깃허브
- kotlin
- 도쿄
- 리눅스
- 오라클
- 안드로이드스튜디오
- oracle
- android studio
- 개발자
- Java
- GitHub
- 자바스크립트
- Git
- Today
- Total
목록SEQUENCE (2)
dev_eunz
개발을 하다보면 시퀀스(SEQUENCE)가 상당히 유용한데, 테스트를 하다보면 시퀀스값이 1이아닌 다른 값으로 시작되어야할 때가 있다. 방법은 두가지가 있는데, 1. 현재 시퀀스를 삭제한 후, 새로 생성 2. 강제로 현재 시퀀스의 값을 변경 ( CHANGE CURRENT SEQUENCE ) 나는 2번의 방법을 자주 사용하는데, 아주 간단하다. ALTER SEQUENCE SEQUENCE_NAME INCREMENT BY 229; ALTER SEQUENCE SEQUENCE_NAME INCREMENT BY 1; 현재값이 21이고, 250부터 시작하고 싶었기 때문에 229 라는 숫자를 사용했다. 위의 쿼리를 실행한 후, 시퀀스를 한번 사용 후, 아래의 쿼리를 실행해주면 된다. ( 다시 1씩 증가시키기 위함 )
회사에서 ORACLE DB를 사용하고 있는데, '시퀀스'를 생각보다 많이 사용하게 되었다. 잇츠 유용해 😆 시퀀스를 생성하는 방법이야 SQL Developer와 같은 툴을 사용해서 편리하게 생성할 수 있지만, 현재 시퀀스의 값이 무엇인지 궁금할 때에는 어떻게 해야할 지 아리송 했던 경험이 있어서 작성하게 되었다. '시퀀스이름.CURRVAL'을 사용하라는 사람들도 꽤나 있었지만, ORA-08002 : '시퀀스이름.CURRVAL'이 세션에서는 정의 되어 있지 않습니다 위와 같은 에러를 맞닥뜨리는 경험을 하게 되었다. 에러의 원인은 '시퀀스이름.CURRVAL'이 해당 세션(일종의 기록)에 남아있지 않다는 것이었다. '시퀀스이름.NEXTVAL' 을 사용하여 세션을 생성해주어야 사용 가능하다. 하지만, 이렇게 된..