728x90 개발 잡담32 DBMS? JPA? 그래도 쿼리는 알아야 한다. 첫 실수를 했다. DB 테이블에서 기존 유저 PK(UUID) 를 새로운 유저 PK(LONG) 로 변경하고 연결 된 FK 도 전부 바꿔야하는 임무를 맡았다. 나는 그 동안 쿼리를 직접 치기보다는 JPA나 DBMS 를 이용했기 때문에 당연히 쿼리가 아닌 DBMS 로 테이블을 만졌다. -> 여기에서 사고가 났다. 아무 생각 없이 FK 컬럼을 지우고 새 컬럼을 추가한 뒤 FK 설정을 하려고 봤더니 (자세히는 말하기 좀 그러니까 대충 말하면) 유저 데이터와 해당 테이블 데이터의 수가 달라 FK 연결이 불가한 사태가 일어났다. 그렇다. 이 테이블은 이제 유저 테이블과 관계가 사라져버린 것이다.... 직접 쿼리를 쳤다면 롤백을 해서 되돌릴 수 있었을 텐데, DBMS 를 이용했기 때문에 이미 커밋돼버렸고... 심지어.. 2023. 12. 11. PK ) Auto Increment 와 UUID 에 대한 고민 회사를 들어오기 전에 나는 그랬다. 각각 테이블의 PK 를 Auto Increment 하고 그걸 그저 user 테이블과 외래키 관계를 두며 관계 설정을 했었다. 그런데 실무에서는 유저 PK 를 만들어 그것을 유저 관련된 다른 테이블에서도 PK를 같은 값으로 두더라고? PK 를 직접 부여하는 방식으로 말이다. -> 이거 우리 회사만 그런 거더라고,,, 다시 바꾸었다. 피엠님을 설득해서 이제는 테이블 고유 식별자를 따로 사용한다아,.. 나는 지금 DB 구조 설계를 맡았다.(두둥) 그래서 그렇게 중요한 PrimaryKey 를 Auto Increment 할 것인가, 아님 UUID 로 부여할 것인가에 대해서 고찰해보았다. UUID 로 PK 를 부여하는 것에 대해서는 이러한 장점이 있다 데이터베이스가 여러 개라면,.. 2023. 12. 7. 이전 1 ··· 3 4 5 6 다음 728x90