我正在嘗試構建一個將特定標籤分配給某個項目或將某個人分配給某個人的小系統。所以,我有一個人名單和一個標籤列表。我需要爲每個人分配3個特定的標籤(對應於這個人可能擁有的3種不同技能)。將特定標籤分配給某個項目的數據庫設計
簡而言之,輸出應該是這樣的:
Person 1 | webdesign, ux, jquery
Person 2 | blogging, photography, wordpress
Person 3 | graphic-design, 3d, inventor
...
現在,這些列表存儲在兩個不同的表:
我的主要目標是,以避免重複和只需將3個現有標籤分配給現有人員即可。
你能給我提供一些關於如何實現這個的提示嗎?我知道一個three-table設計對於標籤系統是很常見的,但這與我的情況有關嗎?
感謝您的幫助。
沒錯。爲了獲得唯一性,您需要在person_id和tag_id列的組合上添加一個唯一約束。 – Marvo
糟糕,失去了我的思路......我實際上會使用組合主鍵。 – doublesharp
太棒了,這正是我想到的。你能否向我展示一個典型的要求,讓我可以利用這三張表來完成我所描述的事情? – morgi