我正在建立一個 API,假設我的資料庫有 authors
和 books
表。
作者和書籍來自外部服務 API,他們在該外部服務上有自己的 id
(我需要追蹤它以供將來的外部呼叫)。
哪種情況最適合我的資料庫?
場景A
authors -id (PK auto increment) -id_author_from_external -name books -id (PK auto increment) -id_book_from_external -id_author (foreign key) -name
場景B
authors -id_author_from_external (PK) -name books -id_book_from_external (PK) -id_author_from_external (foreign key) -name
我實際上認為scenario A
應該沒問題,但後來意識到,當我插入書籍時,我需要使用id_author_from_external
從我的資料庫中尋找作者id
。
你有什麼想法?
P粉3149159222024-02-18 09:27:40
如果外部服務 API 是由您或您的團隊編寫的,或者您 100% 確定不會有任何重複或資料遺失(資料刪除)的可能性,我會說選擇 B。 p>
但是,如果有可能出現其中任何一種情況,最好保留自己的 ID。這將是您的場景 A。
無論如何,我會選擇場景 A。不具有任何外部依賴性。