기본 질문을 용서하지만 데이터베이스 디자인의 영역에 대한 나의 새로운 점은 나를 묶는 데 자주 빠지게됩니다.MySQL DB 설계 도움말
나는 정보 계열에 관해 계속해서 성장하는 사이트가 있습니다. 처음에는 설명하는 항목 중 한 종류가 있었으며 모두 잘되었습니다. 그 아이템은 하나의 레코드를 차지했고 서술형 데이터에 기인 한 34 개의 컬럼을 가지고있었습니다. 이 자료에 점점 더 많은 것을 알게되면서 많은 개발자가 데이터를 (실제로는) 별개의 테이블로 분해한다는 것을 알게되었습니다.
원본 항목과 관련된 표가 추가되었지만 원래 항목을 설명 할 때 항상 필요한 것은 아니므로 불필요하게 쿼리되지 않도록 분리했습니다.
어쨌든, 내가 구성하려고 시도한 새로운 항목이 USER입니다. 사용자 테이블에는 username, email, last_login, 관련 이미지에 대한 경로 등의 일반적인 열이 있습니다.이 사용자는 사용자와 관련된 ID가있는 열과 해당 열과 관련된 항목을 포함하는 또 다른 표에 계속 코멘트를 남깁니다. 논평하고있다.
지금 ... 사이트에 의무적 인 사용자 프로필 페이지를 추가하는 중입니다. 필수 프로필 데이터 만 포함하는 다른 테이블을 만들거나 기존 사용자 테이블에 프로필 데이터가있는 기존 사용자 레코드를 추가해야합니까? 나는 사용자 기록, 사용자 프로필 기록 및 그 사용자 ID와 관련된 다른 데이터를 죽이는 무언가를 실행해야하므로 "사이트에서 제거"기능을 추가하려는 경우 정리 작업이 어려울 수도 있다고 생각합니다. 테이블.
기본적으로 나는이 "세분화 된"디자인 방법을 계속 사용하여 모든 것을 필수적인 부분으로 분해해야합니까? 아니면 더 큰 테이블로 통합하는 역할을합니까? 사용자가 계정을 삭제하면 관련성이없는 데이터가 잔뜩 남는 경우가 있습니다. 예를 들어, 원래 항목은 식당입니다 ... 식당에 "방문수"를 기록하기위한 테이블을 만들면 레스토랑 ID와 사용자 ID가 포함되며 사용자 또는 레스토랑이 사이트에서 제거되면이 "방문수"테이블은 "존재하지 않는 레스토랑은 사용자가 방문하지 않았습니다."또는 "레스토랑 21은 존재하지 않는 사용자가 방문했습니다"라는 쓸모없는 기록이 있습니다.
나는 여기에 의미가 있기를 바랍니다 ... 나는 단지 그것이 시간이 지나면이 "정크"데이터로 끝납니다.
덕분에 많이 롭
감사합니다. Soctt .... 나는이 모든 문제가 매우 주관적이고 상황과 관련이 있다고 생각하기 때문에 신용을 해결해 줄 것입니다. 나는 f k를 살펴볼 것이다. –