[英]Unsure if my ER Diagram to relational model is correct
好吧,我是SQL的新手,所以如果這是完全錯誤的話,我深表歉意。
我設計了一個我認為正確的ER模型,並且試圖將其轉換為關系模型,並希望獲得有關我在轉換該模型時出錯的任何建議或任何提示。 絞盡腦汁。
我相信
1-1關系實體可以合並,也可以將一個實體類型的主鍵作為外鍵放置在另一個關系中。
1-m關系將“一側”中的主鍵作為多端中的外鍵放置。
mn關系創建一個新關系,每個實體的主鍵構成一個復合鍵。
多值屬性將創建一個新表,第一個表中使用的主鍵,第二個表中使用的屬性則是主表的主鍵。
所以這是我的關系模型,黑體字為PK,斜體字為FK
USER: USERID FNAME LNAME USERNAME密碼USERTYPE電子郵件
客戶: USERID , CUST_ID ,BIO
ADMIN: USERID ADMIN_ID
ARTIST USERID , ARTIST_ID ,BIO REC_ID
生產者 : PROD_ID ,名稱,電子郵件
記錄標簽: RECORD_ID ,名稱,說明
專輯: 專輯名稱,費用,標題,NOOFSONGS
軌跡: 軌跡ID ,名稱,費用,標題,說明
軌跡審核 :與軌跡有關,因此軌跡ID進入此表= REVIEW_ID(PK) , TRK_ID(PK)名稱
跟蹤購買表(用戶ID作為外鍵進入此表) TrackPuchaseID user_id ,日期
專輯購買表AlbumPuchaseID user_id ,日期,數量
類型表:不確定嗎?
BPM:是多值屬性,所以因為它是單獨的表,所以它是GenreID BPM
我知道這一切可能都是錯誤的。 但是任何幫助都會很棒..解釋應該是FK還是復合PK等,或者我缺少什么表。
album purchase
您應該具有: user_id
, date
, album_id
。 track purchase
我看不到您為什么在乎quantity
,卻錯過了track_id
。 review
, track
, album
, user
都應包括一個date
。 向artist
和customer
添加last_update_date
可能也很有趣。 review
應包含一個user_id
。 我想還有其他事情了。 您將需要一個Invoice
/ Invoice_Purchase
表,以便能夠說“客戶xyz購買了1,2,3,4 ...”項目,它應該像這樣:
表格Invoice
表Invoice_Purchase
也許您還應該將status
添加到相冊和曲目,這樣您就可以設置是否可以購買商品。 是的,您不應該刪除它們,因為您會使用舊的發票...
無論如何,您應該稍后考慮使用類似Navicat
的軟件來繪制關系部分並部署數據庫。
從初步看,這是我的一些印象,沒有特別的順序。
那應該讓你忙一陣子。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.