2011-03-11 144 views
0

任何人都可以幫助我根據以下標準設計數據庫/表格嗎?基於列表的數據庫設計

電子商務網站是必需的,它將允許訪問者瀏覽,搜索和購買電影。以下業務邏輯適用:

  1. 每部影片都可以DVD或Blu-ray格式提供不同的股票代碼和價格。網站管理員可能會在將來添加其他格式。
  2. 電影應該有一個標題,說明,它們被釋放的年份以及存儲在它們中的十個「星級」。
  3. 電影與一個或多個演員和演員相關聯,因爲一些電影可能是紀錄片(沒有演員),所以可以與沒有或更多的電影相關聯。
  4. 電影可以關聯到一個或多個流派(如動作,冒險,科幻等)。
  5. 流派和演員的數量可能會發生變化,因此網站管理員需要能夠隨着時間的推移添加/編輯儘可能多的流派和演員。
  6. 該網站的訪問者應該能夠通過演員或流派瀏覽找到電影。當他們這樣做時,他們應該能夠看到與他們選擇的演員/流派相關聯的所有電影的列表。
  7. 爲了從網站上購買,訪客必須註冊他們的詳細信息才能成爲用戶。
  8. 用戶將擁有一個或多個與其帳戶相關聯的地址。當他們以後登錄到系統時,他們以前輸入的所有地址應該可供他們選擇其最新訂單。他們也應該能夠隨時爲他們的賬戶添加一個新的地址。
  9. 訂購時,用戶將從可用膠片(特定格式)中選擇一個或多個項目。他們需要選擇一個賬單並提供他們之前輸入的地址,並通過信用卡支付他們的訂單。
  10. 由於產品價格會隨時間而變化,因此係統應記錄其訂單中每件商品的價格是在購買時的價格以及整個訂單的總價格。
  11. 不需要跟蹤庫存水平 - 所有產品都可以被假定爲一直存貨。
+0

這功課嗎?無論如何,你不太可能會在這裏找到爲你設計數據庫的人。自己做一些工作,看看你想出什麼 - 然後問你在這裏的任何具體問題。 – Blorgbeard

+0

我想要一些基本的想法......設計這個......就是這樣。 –

+0

那麼你認爲哪些表格是必要的?這是一個起點。通讀列表並確定可能需要表的引用項目。一對夫婦開始:電影,GENRE,ACTOR –

回答

1

這是我可以想出的東西,希望它應該滿足您的要求中提到的所有標準。我是在SQL Server中設計的,因爲我在這臺機器上沒有MySQL。

Database schema

步驟來設計數據庫(實體關係模型)

  1. 從需求確定實體。實體是持有信息的對象(通常表示真實世界的實體,如人員,汽車,銀行,員工等)。在你的情況下,可識別的實體是:電影,演員,用戶,訂單
  2. 一旦你確定了你的需求中的實體,就可以下定決心(或屬性)的實體的。這些屬性是你將實體關聯起來的東西。例如,可以通過製造商,型號,顏色,引擎容量等來識別汽車。在您的情況下,電影實體的屬性將是名稱,流派,ActorInFilm(s),格式,價格
  3. 確定實體之間的關係。就你而言,電影與演員有關係。關係是:一部電影可以有零個或更多的演員。而且,一個演員可以在一部或多部電影中演出。因此電影和演員是相關的。
  4. 確定關係的基數。基數可以用簡單的術語解釋爲該實體的多少個實例參與該關係。例如,僱主可以有一個或多個員工。而一名僱員只能由一名僱主聘用。在這種情況下,有兩個實體:僱主和僱員。他們分享關係僱用。在您的要求,電影和演員是實體共享的關係行爲在(演員(S)行爲在膜)。因此,在這種情況下,基數將是一對多(電影對演員)(一個演員可以在許多電影中扮演角色)和零對多(演員對電影)。
  5. 一旦完成了這部分,你就有了你的零正常實體關係圖。然後是標準化。你可以在另一篇文章here上閱讀。
  6. 後已恢復正常的實體關係(截至第三範式通常就足夠了),你可以實現在SQL設計軟件的數據庫設計(MySQL的,等等)

做的最好的方法上述步驟是採取一張紙,並以表格格式寫入實體和屬性,然後將它們鏈接到其他實體(以表示關係)。

你可以參考數據庫的概念(包括正常化),或只是對谷歌搜索什麼好book(關鍵字:數據庫正常化數據庫設計實體關係模型等)。我上面解釋的是簡要,您將需要自己發現其餘的數據庫概念。

實體關係圖通常縮寫爲ER圖。

+0

非常感謝您的嘗試......您能解釋一下關於上述表格和它的關係嗎?以及如何創建它等..如果你有時間.. –

+0

@aron n,我添加了一個簡短的解釋。我建議你抓一本好的數據庫概念書,以便更好地理解。涉及的概念太大,無法涵蓋在單個帖子中。 –

2

如果這是家庭作業或課程項目,那麼您確實需要開始學習規範化。看看wikipedia或這個introduction上的文章在MySQL網站

如果這是一個專業的項目,那麼你需要專業的幫助來設計/開發你的電子商務網站。