我正在嘗試爲我們的管理員實施內部聊天系統,但我對數據庫設計並不太確定。到目前爲止,我有這個(下面),但希望驗證和/或改進建議。內部管理員聊天系統的數據庫設計
Employees {
EmployeeId (smallint)
// ...
}
Chat {
ChatId (int)
Stamp (datetime) // Obsolete, ignore...
}
ChatEmployees {
ChatEmployeeId (int) // Or bigint?
ChatId (int) -> Chat.ChatId
EmployeeId (smallint) -> Employees.EmployeeId
}
Messages {
MessageId (int) // Or bigint?
AuthorId (smallint) -> Employees.EmployeeId
ChatId (int) -> Chat.ChatId
Text (varchar(512))
Stamp (datetime)
}
所以,這就是我到目前爲止,但我不知道它是否「足夠」。將與數據庫交互的應用程序使用ASP.NET MVC 2和Linq to SQL構建。
在此先感謝您的任何建議!
如果每封郵件都有時間戳,爲什麼'Chat'需要一個? – 2010-10-15 02:49:21
因爲我不確定,所以我在'Chat'中加了'Stamp'。我也在辯論它的需求......思考它,這可能是無用的,因爲我會有「開始」和「結束」'消息'的郵票。 – Gup3rSuR4c 2010-10-15 02:52:29