2014-04-02 23 views
2

我有四個類型的數據的在一個SQL Server數據庫表數據:論壇主題文章題目聊天話題QNA主題。這些具有相同類型的列組成:IDTitleContentUsertype等。唯一的區別是用於檢測,如果當前內容是論壇話題type = 0)或文章主題(該typetype = 1)等等。一個表或多個表的只有一個變化

我的同事們說最好把它們存儲在不同的表格中,即ForumTopics,Articles,Chats,QnAs。但在我看來,這不是一個好主意,因爲基於這些內容的C#方法將會不同,要麼我必須爲每個表的每個操作編寫具有相同邏輯的多個函數,或者在一個函數中編寫一個條件檢查,其中一個函數爲論壇話題type = 0)或文章主題type = 1)或其他。

請告訴我哪種方法更好?

回答

4

一個表是更好的方法,因爲它會給你未來的靈活性。你將能夠做的事情如下所示:

  • 在所有標題

特定用戶選擇一切

  • 搜索的東西,除了多個表都難以維持,你是對的。在你的C#代碼中會有更多的複雜性和重複以及多個表。

  • 1

    使用一張表是更好的方法,因爲如果將數據存儲在單獨的表中,您必須編寫複雜的查詢,否則很難維護數據。 如果使用多個表,則必須使用連接或子查詢來檢索導致性能下降的數據。
    所以去一張桌子。

    相關問題