Schema

建立一個所有表ID都只是“_id”的關係模型的優缺點?

  • September 26, 2020

我一直把pk表的 d 作為這種模式:小寫表名+ Id。

那是我在大學裡教的,我沒有考慮過。當有人使用mongodb(非關係數據庫)向我提出挑戰時,我無法弄清楚為什麼我曾經這樣做過?

我唯一能想到的是一些 ORM 有它,以便自動建構pk通常匹配此模式的列。

任何見解將不勝感激。

沒有重要的理由去做其中之一。這兩種風格都很常見,而且效果很好。

AFAIK:Pro:你總是知道如何連接,因為外鍵在每個表中使用相同的列名,連接查詢更容易驗證。

缺點:您不能在應用程序中聲明具有主鍵作為屬性的超類型。IE 是 .NET 中相對常見的模式

public abstract class Entity
{
   public int Id { get; set; }
}

作為您的實體的通用基本類型。

有些人可能會爭辯說,除非有實際需要,否則不應將合成鍵添加到表中,但這確實是一個不同的問題。

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