2011-02-01 2 views
0

저는 페이스 북과 같은 소셜 네트워킹 사이트를 만드는 중이고 데이터베이스 스키마 디자인에 대해 망설였습니다. 이전 질문에서 i는 내가 내 사이트에 등록하는 새 사용자를위한 새 데이터베이스 또는 테이블을 만들지 못하게합니다. 나는 새로운 행을 삽입 할 필요가있다. [그게 내 유일한 옵션이다.] 내가 틀렸다면 정정해라.]]. 그러나 이것은 처음으로 등록을 위해 작동합니다. 사용자가 자신의 프로필에 새로운 글을 올리면 어떻게 될까 ..이 업데이트를 어디서 삽입해야합니까? coz, 나는 각 사용자에게 대응하는 행에 삽입 할 수 없습니다 .. 너무 많은 열을 만들 수 없습니다 .. 해결책은 무엇입니까? 이.?소셜 네트워킹 사이트에 데이터베이스 스키마 도움이 필요합니다.

스키마 =>

TABLENAME : USER_CONTENT

userId를 이름 대학 도시 Status_Updates 메시지

1 SFD FDS fsds SDDS 2 F DFG DFD FDF DFD

어떤 사용자 1 업데이트하는 경우 뭔가 .. 내가 뭘 해야할지. 그것의 상태 업데이트, 어떻게 그것에 대해 갈 생각하십시오.?

답변

1

사용자가 수행 할 수 있도록 허용하려는 항목과 결과로 저장해야하는 관련 데이터를 기반으로 표를 추가하십시오. 일부 예를 들어 테이블 :

  • 'USER_ACCOUNT': 사용자 계정 정보 (이메일 주소, 비밀번호) - 사용자 ID에 의해 참조
  • 'user_profile로': 기본 사용자 프로필 정보 - 사용자 ID에 의해 참조
  • ' user_status ': 사용자 상태 메시지 - 사용자 ID에 의해 참조 됨

나는 이것이 첫 번째 주요 데이터베이스 응용 프로그램이라는 감각을 가지고 있으며, 그렇다면 일반적으로 데이터베이스 디자인에 대해 더 많이 알아야합니다. 이런 응용 프로그램. 데이터베이스 스키마를 설계 할 때 고려해야 할 사항이 많으며 처음부터 잘 설계하는 것이 중요합니다. 응용 프로그램의 핵심은 데이터가 얼마나 잘 구성되고 액세스 가능한지에 의존하므로 좋은 디자인을 개발하는 데 충분한 시간을 할애해야합니다.

행운을 빈다.

+0

안녕하세요 bernard .. 음, 이건이 규모의 첫 번째 DB 프로젝트입니다. 저는 DBMS의 기본 이론을 잘 알고 있지만 여전히 구현 부분을 추적 할 수는 없습니다 ... 몇 가지 참조를 제안 해주세요. 유사한 종류의 프로젝트의 실제적인 구현 기능을 이해해야합니다. –

+0

안녕 대기 .. 내가 말한 것처럼 할 수 있다면, 즉 각 사용자에 대해 3 개의 테이블을 만드는 것입니다. 데르가 내 사이트에서 100,000 명의 사용자라면 300,000 개의 테이블이 될 것입니다. 괜찮습니까? –

+1

각 사용자에 대한 테이블을 만들지 마십시오. 예를 들어, * 모든 * 사용자에 대해 위에 설명한 세 개의 테이블을 사용하고 각 테이블의 각 사용자에 대해 한 행의 데이터를 저장합니다. 각 행은 사용자 ID로 고유하게 식별되므로 특정 사용자의 데이터를 검색 할 수 있습니다. 하지만 데이터베이스 스키마를 만들 때 알아야 할 기본 사항 중 하나입니다. 몇 가지 테이블을 사용하여 먼저 간단한 스키마를 만들고 응용 프로그램의 가장 기본적인 기능을 구현하는 것이 좋습니다. – Bernard

관련 문제