0

我正在設計我的第一個數據庫,並從頭開始編寫我的第一個PHP項目,我需要某人來審查數據庫方案。MySql/PHP - 設計我的第一個數據庫。需要評論

PHP腳本的目的:要爲我的網絡中的各種網站時我發表我打算如何安排它在如YouTube,MySpace上,優酷,Vimeo的等

網站宣傳視頻顯示流量統計:

  1. 一個站點可以有多個類別,如「吉他課」, 「會唱歌的教訓」,「舞蹈課」。
  2. 某些類別可以有子類別。像「吉他課程」可以拆分爲「低音」和「電」
  3. 在一個類別可以是一個宣傳視頻。在下圖中,視頻被命名爲項目
  4. 一個項目(宣傳視頻)只能在一個類別中創建
  5. 一個宣傳視頻,可以提交到多個視頻共享網站(YouTube上,Vimeo的等)
  6. 一個宣傳視頻可以有幾種不同的元數據像 「標題」 和 「說明」

情景可能發生:

  • 也許有一天,YouTube將刪除我的宣傳視頻中的一個,在 這種情況下,我會重新上傳它可能與不同的「標題」 和「描述」,但我想顯示一些舊的信息在 統計數據像刪除前的先前的數量。
  • 我想不出任何其他現在..
  • 編輯: 我添加表itemStats enter image description here

    EDIT2:我不知道,如果我要去需要單獨的itemStats表。我正在考慮加入itemMeta?

    +0

    你用什麼程序來製作上面的數據庫圖表? – TryHarder

    回答

    0

    我建議你結合用戶usersMeta一個表。在用戶中只有5個獨特的有用字段,用戶必須是。如果您需要的話,您將需要利用連接來獲取所有這些數據,這在我看來是沒有必要的。請記住,normalization是刪除冗餘並確保所有表都具有最小數量的字段的過程......但這需要付出代價。成本在大多數情況下是性能。

    此外,用戶表通過組合它們只能達到總共9個字段。這仍然是我認爲是非常小的一張桌子。我以前有過20-30場的桌子。就我而言,將數據分離出來是沒有意義的,因爲它對於表格來說是獨一無二的,並且無論如何沒有其他表格或系統的一部分會使用這些數據。

    1

    您將主鍵鏈接到某些表(用戶:id到usersMeta:id)上的主鍵而不是主鍵到外鍵(網站:id到類別:siteid)。可能不會很好地工作。

    +1

    好地方。會修復它! – RhymeGuy