Database/Oracle
[Oracle] 오라클 Insert 자동 증가 (MAX+1)
영보로그
2021. 3. 12. 16:27
반응형
오류 상황
- PK로 지정해놓은 컬럼의 파라미터 값이 Null값이라 컬럼 오류가 계속 발생
1) 파라미터 값에 시퀀스 넣기 복잡함
2) 시퀀스 말고 다른 방법 하고싶음
- 해결 방법 (Value절 삽입)
SELECT NVL(MAX(증가컬럼)+1,0) FROM 테이블)
- 하지만 MAX+1은 동시성이 보장되지 않기 때문에 유의해야 한다.
코드
INSERT INTO EMP
(EMPN, NAME, TEL, ADD, EMAIL, SEX, PHONE, CITY, SAL)
VALUES
(
#{name},#{tel},#{add},#{email},#{sex},#{phone},#{ciyt},
(
SELECT NVL(MAX(empn)+1,0) FROM CMS_ENTRANCE)
)
반응형