2012-06-28 40 views
0

我有200個用戶,每個用戶最終都會有一個包含某些數據的「reviewINFO」表。需要關於Mysql數據庫結構的幫助

每個用戶都有一個審覈每3〜4個月

所以對於每一個回顧,它創建了「reviewINFO」表內的一個新行。

這是我卡住的地方。我不確定是否需要序列化每行內的表格。 實施例:

- >鏈接

「USER1reviewINFO」 -row1-> USER1table1

   -row2->USER1table2 
      -row3->USER1table3 
      -row4->USER1table4 
      -row5->USER1table5 

「USER2reviewINFO」 -row1-> USER2table1

   -row2->USER2table2 
      -row3->USER2table3 
      -row4->USER2table4 
      -row5->USER2table5 

使用這種方法就會使兩年內有幾千行。我認爲難以管理。

「Userxtablex」是孩子的姓名,年齡的動態行的表,布爾

什麼,我覺得做的是序列化每個USERxtable到其相應的行。

請幫助,因爲我不希望讓這個複雜或低效

+0

USER1table1包含什麼?你爲什麼覺得你必須序列化它?並且兩年內的幾千行不算什麼:) –

+0

您能否提供一些示例數據以幫助我們更好地理解您嘗試建模的問題? –

+0

User1reviewInfo包含時間等信息。 – user1489261

回答

0

一般情況下,你永遠不應該有這種性質的數據序列化到錶行,以實現自己的目標是什麼(這我假設是用戶和評論之間的隱含鏈接)

您需要做的是將user_id的評論關鍵,以便將所有評論打包在一張表中,並將數字關聯回用戶表。

假設您在用戶表中有一個AUTO_INCREMENT主鍵,您只需要在評論表中顯示一個user_id字段,該字段表示與該評論相關的用戶。如果這就是你的建議,那麼每個用戶都不需要單獨的結構。評論也可以包含日期字段,因此您可以針對特定年份或時間窗口執行查詢。

然後,您可以使用JOIN查詢來選擇與特定用戶或審閱相關的數據集,並應用通常的WHERE子句來確定要提取的結果集。

+0

對不起,我可能有點困惑每行都應該喜歡到另一個表,而不是Usertable ...讓我解釋一下。我實際上正在使用vb.net。我有信息(審查)存儲到MySQL。每個評論都保存在一行中。但是每個評論還有一個包含兒童信息的datagridview。對於datagridview是我有問題。我不知道它是否需要存儲在單獨的表中或序列化到同一行中。 – user1489261