我目前正在嘗試設計一個組成數據庫的表結構。該數據庫將有三個單獨的表格並追蹤10年的城市人口。每年之後,將爲數據庫中的每個城市添加人口數字。下面是我已經做好了這三個表至今:在數據庫中爲這個MySQL表創建uniqueID是否有意義?
城市(city_id,CITY_NAME,city_abbrv)
年(year_id,年)
統計(year_id,city_id,人口)
我很擔心我的統計表中沒有唯一的標識符。在10個城市中,10個參賽項目的年份數據將相同。一旦我輸入了多年的數據,city_id將被重複使用。在我對這個網站的研究中,我讀到了每個表都有一個唯一的ID是不需要的,但是我用來學習數據庫設計的書(儘管簡短)從未提及過這個問題。我想知道設計一個數據庫的最佳方法,該數據庫按照每日/每週/每月/每年時間表接收同一組內容的數據條目。我應該添加一個unique_id列到我的統計表嗎?或者這會是一個浪費的專欄?謝謝您的幫助!
爲什麼不使用'(year_id,city_id)'作爲主鍵?順便說一句:'Year'表中的'year_id'是一個浪費的列。你可以使用'year'作爲主鍵。 –
我擔心Stats表中沒有唯一的標識符。如果我使用year_id和city_id作爲主鍵,則Stats表中不會包含唯一標識符。 – mizDawg
您可以使用兩個(或更多)列的組合作爲「唯一標識符」(複合主鍵)。 –