簡體   English   中英

在邏輯ER設計中,外鍵何時還應作為主鍵?

[英]In a Logical ER Design, when should a foreign key, also be a primary key?

我目前正在基於研究期刊/論文數據庫進行數據庫設計任務。 我遇到的主要問題是確定某些實體是否具有足夠的唯一標識符(以及正確的標識符)以及我是否正確建立了關系。

例如。 每篇研究論文都有一個唯一的PaperID(PK)。 每篇研究論文都有一個關鍵字列表(通常為4-5),作者在論文開始時列出了這些關鍵字。

  1. 我認為這是一對多關系對嗎? -一篇論文有很多關鍵詞,每個關鍵詞實例都屬於一篇論文。

  2. 紙張PK(PaperID)是否成為關鍵字表的FK和PK? 這種布局是否支持上述一對多關系?

例如


表-紙

PK = PaperID

屬性列表


表格-關鍵字

PK,FK = PaperID

關鍵詞


因此,查詢查找所有具有特定關鍵字(例如'Pig')的論文的結果將類似於:

PaperID | 關鍵詞

1 | '豬'

2 | '豬'

63 | '豬'


我的邏輯是正確的思考方式嗎?

任何建議或幫助將不勝感激!

謝謝

***編輯:因此似乎大多數人都認為這是一個多對多的關系,不幸的是,研究論文中有許多這樣的關系(例如,研究目標,主要主題,子主題) ,研究類型,研究問題)

->那么,我是否必須通過為其中每一個創建關聯實體來解決這些問題? 當然,必須有一個更好的方法來解決這些多對多問題,而不是必須創建一個額外的..... 8-10關聯實體? 父類型/子類型?

再次感謝大家的回復。 邊學邊學!

  1. 我本以為“ Paper to Paper”將是多對多的關系。 許多論文中都出現了關鍵字“豬”。 而且任何一篇論文都可以有很多關鍵字。 這樣,您可以減少文本的重復。 (但是再說一遍,用您的方式編寫代碼可能更快。)

  2. 如果您的關系是一對多的,那么您可能希望在“關鍵字”表上使用“復合”鍵,因此關鍵字的PK由PaperID +關鍵字構成。 老實說,我不會汗流-背-聽起來您只想在關鍵字上建立索引,而不用擔心該表的PK格式正確。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM