【问题标题】:Have a table for every basic types or merge them into one table每个基本类型都有一个表或将它们合并到一个表中
【发布时间】:2016-03-07 16:09:05
【问题描述】:

我的项目中有 100 多种基本类型。假设它们都只包含一个 Id 和一个 Title ,那么这些方法中哪个更好用:

方法 1:为每个人创建一个单独的表

方法2:为所有这些创建一个表并使用另一个字段作为鉴别器

我正在使用将 MSSQL 服务器与 Entity Framework Code-First Approach 一起使用。实际上我无法决定我应该选择使用哪种方法。

我认为这个问题是自我介绍的,但如果您需要更多详细信息,请告诉我。

UPDATE1:请不要向我推荐this 问题。我已经检查了这个,没有太大帮助

UPDATE2 :这些表中的许多表与其他表有许多关系。但他们中的一些人不会使用那么多

【问题讨论】:

  • 方法2。不要创建 100 个表,除非你真的必须这样做。如果您必须模拟单独的表格,您总是可以使用视图。

标签: sql entity-framework database-design


【解决方案1】:

Approach1 将保持关系完整性和干净的导航属性表单模型。

您的 IDE 也将帮助您完成正确的模型名称。

提示:为所有表格创建和接口,以便重复使用 UI 控件。

已编辑

如果您找到此表的公司名称,例如 customer_data,则创建一个表。如果名称与技术相关master_tables 拆分为完整的语义类。

【讨论】:

    【解决方案2】:

    从 Id/Title 基本类型和 EF TPH 继承的 100 种类型(因此 DB 将有 1 个带鉴别器的表,程序员将有 100 种类型)。

    【讨论】:

    猜你喜欢
    • 2021-01-10
    • 2011-08-28
    • 1970-01-01
    • 2011-06-03
    • 2020-06-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-14
    相关资源
    最近更新 更多