IT/DB

PK값 수동 증가

_KH_ 2025. 4. 13. 21:53

이번에 Model 파트를 맡아 쿼리문을 짜면서 고민했던 점은 PK값을 증가시키는 방법이다. 

AUTO_INCREMENT를 사용하면 편하지만 해당 속성은 MYSQL에만 존재하는 속성이기 때문에 다른 DBMS와 호환성이 안좋다.

그래서 생각해낸건 IFNULL(MAX)).

BOARD_COMBO_LIKED_NUMBER의 가장 큰 값에 1을 더해 PK값으로 설정하는 것이다. 만약 BOARD_COMBO_LIKED_NUMBER에 값이 없으면 0으로 치환하여 다시 처음 값부터 증가시키도록 한다.

 

시퀀스(Sequence) 라는 것도 있다고 들었는데 그건 오라클 DB에서  값을 자동으로 증가시킬 때 사용한다고 한다.

하지만 얘도 오라클에서만 쓰이고 MySQL에는 없는 기능이라고 한다.

다만 시퀀스를 따라해서 MySQL에서도 비슷하게 쓸 수 있다고 하는데 다음 번에는 이 방법을 적용시켜 보는 것도 좋을 것 같다.