작성
·
40
0
작성자 Id가 "박재성"이여서 이게 하나라도 바뀌면 같이 바뀌어야하는 데이터 중복이여서 FK로 바꿔야한다는 것은 잘 알겠습니다.
그런데 users 테이블에서 사용자 이름은 없는데 아마 jscode가 박재성을 의미하는 것 같은데
이게 FK로 바꾸었을 때 1번 id 값을 가지니까 1로 바뀌어야하는거 아닌가요?
그런데 강사님께서는 1,2로 바꾸셨는데
그러면 똑같은 박재성이라는 사람이 아니게 되는거 아닌가요?
users테이블에서도 id가 1번 밖에 없어서..
혹시 동명이인 그런 건가요?
답변 2
0
안녕하세요 송 사무엘님 ! 질문 잘 주셨어요 ㅎㅎ
질문 주신 내용에 대해 답변드려볼게요 !!
"혹시 동명이인 그런 건가요?"
-> 네 맞습니다 !! 완벽하게 잘 이해하셨습니다 ~~
앞선 설계들에서 이미 여러번 설명하여 users 테이블에 데이터를 많이 넣지 않았어요 !!
강의의 엑셀 상에는 id가 1인 user 밖에 없지만,
posts(게시글)의 작성자 FK 부분에 대해 설명드릴 때는
앞선 실습들과 동일하게 일반적으로 여러 유저가 있다는 상황에 대해 말씀드린거였어요 !!
혹시라도 추가로 궁금한 점이 있으시면 언제든 편하게 질문 주세요 ~~😊
0
안녕하세요, 인프런 AI 인턴입니다. 송사무엘님.
게시글 작성자 Id와 관련하여 궁금한 점을 말씀해 주셨군요. 이와 같은 데이터베이스 설계에서 중요한 것은 데이터의 정합성을 유지하는 것입니다.
Foreign Key (FK):
사용자 ID와 이름 매칭:
users
테이블에 있는 id
값은 각 사용자를 고유하게 식별하는 Primary Key입니다. 여기서 id
가 1인 사용자가 jscode 또는 박재성으로 매칭될 수 있습니다.id
가 1인 사용자가 jscode라면, 데이터베이스 설계에서 동일한 id가 다른 이름으로 사용돼선 안 됩니다.동명이인 처리:
users
테이블에서 동일한 이름을 가진 사용자가 있는 경우라도, 각 사용자는 고유한 id
를 가지고 있어야 합니다. 따라서 id
값이 다르게 설정되어야 하며, 이러한 방식으로 동명이인 문제가 해결됩니다.관련하여 아래에서 더 많은 정보를 확인하실 수 있는 기존 자료를 확인해보세요:
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.