Mysql

可以為不同的實體設置多個文件表嗎?

  • January 25, 2022

我有兩個實體 A 和 B。

A 和 B 可以有多個與之關聯的文件,每個文件都可以是 adocumentimage.

創建具有以下結構的表a_files是否有意義?b_files

id | a_id | url | type(enum)

id | b_id | url | type(enum)

我也考慮過創建一個通用files表,然後通過 引用它a/b_files,但在我看來,這似乎是一種過度殺戮的連接。

如果您的兩個表在結構上完全相同,那麼它們很可能應該是一個表。您的帶有兩個單獨表的範例似乎是多餘的,因此從長遠來看需要進行更多的維護工作,並且可能更容易出錯。

我也考慮過創建一個通用文件表,然後通過 a/b_files 引用它,但在我看來,這似乎是一種過度殺傷連接。 ” - 以對您的案例最合乎邏輯的方式設計您的表和對象結構,如果有必要的話,擔心之後的性能。現代關係數據庫系統可以在正確索引時很好地處理大量行,即使在加入時也是如此。

一般來說,聽起來您只需要一個定義為(id, url, type, entity_id).

引用自:https://dba.stackexchange.com/questions/306530