강의

멘토링

커뮤니티

Inflearn Community Q&A

qwee06063235's profile image
qwee06063235

asked

Create your first server with Java and Spring Boot, from development to deployment, easily! [All-in-one server development package]

Lesson 15. Handling Exceptions for User Update and Delete APIs

등록 시 질문

Written on

·

246

1

등록 id가 1번과 2번이 있었다가 2번을 삭제하고 다시 등록을 하면 id가 3번으로 등록이 됩니다. 제가 잘못한 걸까요..?? 아니면 혹시 원래 이렇게 돌아가도록 설정하신건가요??

javaspringawsmysqlspring-bootjpa

Answer 2

0

table 생성시 auto_increment 사용해서 자동증가 되는거 아닌가요??

0

lannstark님의 프로필 이미지
lannstark
Instructor

안녕하세요!! qwe_e0606님~ 질문 올려주셔서 항상 감사드립니다~ 😊

 

id 같은 경우 과거에 저장되어 있던 데이터와도 겹치지 않게 하기 위해 삭제 여부와 관계없에 항상 1씩 증가하는 것이 맞습니다!!

과거에 있는 데이터와 id가 같은 경우, 또 다른 테이블와 혼선이 있을 수 있거든요!

 

예를 들어 과일 테이블과 / 과일에 대한 세금 테이블이 있다고 해보겠습니다! 그러면 아주 대략적으로 테이블이 이렇게 생겼을 거에요!

 

<과일>

  • id

  • name

 

<과일 세금 테이블>

  • id

  • 과일id <-- 과일 세금 테이블에 있는 데이터가 어떤 과일에 대한 것인지 구분하기 위한 id

  • 세금 금액

 

그럼 이제 1번 사과에 대한 세금 1000원은 이렇게 기록되겠죠!

(1, 사과) / (1, 1, 1000)

 

자 이때 1번 사과를 지우고, 새로운 과일 바나나를 넣어보겠습니다!

그러면 비어 있음 / (1, 1, 1000) 에서 (?, 바나나) / (1, 1, 1000) 이 되겠죠!

여기서 바나나의 id를 정해줘야 하는데 1로 하게 되면 다른 테이블의 데이터를 고려했을 때 혼란이 생길 수 있게 됩니다. 때문에 바나나의 id는 2가 되는거죠!

(2, 바나나) / (1, 1, 1000)

 

제 답변이 도움이 되었으면 좋겠습니다~ 감사합니다!! 🙏

qwee06063235님의 프로필 이미지
qwee06063235
Questioner

이해됐습니다! 감사합니다!

qwee06063235's profile image
qwee06063235

asked

Ask a question