728x90 반응형 Back Side/DBMS > MySQL2 기본 키를 설정하지 않았는데 테이블이 만들어진다?! DB에는 중요한 속성 하나가 있다. 바로 key다. 그 중에서도 기본 키는 유일성과 최소성을 만족하며 선택된 key로 null과 중복이 안된다. 그런데 MySQL에서 기본키를 설정하지 않아도 테이블이 만들어진다고 한다?! 지금까지 자동으로 _id 필드 생성해주는 MongoDB만 판 사람으로써 3초 동안 무슨 말인지 이해가 안됐다. 아니 왜 기본키를 설정하지 않고... 아... 권장사항이지 필수가 아니라고요... 하지만... 실무에서 그러면 모가지 아닌가요? 이거 맞아요...? 당황스러운만큼 새로운 사실에 흥미를 느껴서 한 번 정리해보고자 한다. 기본키 없이 테이블 만들어보기CREATE TABLE users ( id INT PRIMARY KEY AUTO_INCREMENT, name VARCH.. 2025. 10. 15. 관계형 데이터베이스의 중간 테이블 예를들어, 목표가 있다고 하자. 그 목표에는 이름도 있고 날짜도 있다. 그리고 태그도 있다. 여기에서 태그에는 라벨과 이모지가 데이터가 들어간다. 기존에 쓰던 MongoDB와 같은 문서 기반에서는 아래와 같이 쓴다.{ "name": "Spring 공부하기", "tags": [ { "label": "공부", "emoji": "📚" }, { "label": "개발", "emoji": "💻" } ]}이런 식으로 Goal 안에 tags를 박아버리면 끝이다. 하지만 관계형 데이터 베이스에선 그러면 안된다. 왜냐하면 Goal과 Tag가 다대다(N:N) 관계이기 때문이다. 예를들어 하나의 목표(=Spring 공부하기)에 여러 태그(=공부, 개발)가 있을 수 있다. 그리고 하나의 태그(=공부)가 여.. 2025. 4. 13. 이전 1 다음 728x90 반응형