2011-01-13 5 views
0

메시징 용 스키마 (채팅 메시지, 온 사이트 메시지 및 전자 메일 기능 혼합)를 만들었으며 모든 샘플 스키마에 주 테이블이 "사서함"이고 사서함에 메시지가 연결되어있는 것으로 나타났습니다. 그러나 메일은 사용자에게 속하며 어쨌든 각 사용자는 어디서나받은 편지함이 하나뿐이므로이 테이블의 목적은 무엇이며이 방법을 연결합니까?사서함 스키마 질문

만약 내가 이렇게하면 : 메시지 테이블은 User 테이블을 FK로 User 테이블에 연결하여 작동시킬 것인가 아니면 메시지를 메일 박스에 링크 한 다음 사용자에게 연결해야합니까?

또한 메시지의 데이터 유형이 될만큼 큰 메시지 크기입니까? (참고 : 메시지 = 이메일 + 페이스 북 메시지와 같은 온 사이트 통신 + 채팅 메시지 + 사람들이 프로필에 남긴 의견). 따라서 온라인 주간에 앉아 메시지를 보내는 사용자가 충분한 경우 bigint가 곧 초과 될 수 있다고 가정합니다.

답변

1

세 번째 테이블을 가질 유일한 이유는 여러 개의 값이있는 것입니다. 사용자가 하나의 사서함 만 가지고 있다고 말하면 mailbox = user입니다. 이 경우 두 테이블 솔루션이 정상적으로 작동합니다.

MS SQL Server에서 bigint는 9,223,372,036854775807까지 계산할 수 있습니다. 당신은 그 하중의 100 만분의 1 이내에 들어가면 오랫동안 당신의 요트에서 은퇴하게 될 것입니다.

행운을 빈다.

관련 문제