Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 数据库建模/ER图-是否应将查找表作为单独的实体单独保留?_Sql_Entity Framework_Database Design_Lookup Tables_Er Diagram - Fatal编程技术网

Sql 数据库建模/ER图-是否应将查找表作为单独的实体单独保留?

Sql 数据库建模/ER图-是否应将查找表作为单独的实体单独保留?,sql,entity-framework,database-design,lookup-tables,er-diagram,Sql,Entity Framework,Database Design,Lookup Tables,Er Diagram,我正在尝试创建一个数据库,它可以管理/记录许多不同机械类型的目击事件,无论是汽车、公共汽车、卡车、船只、火车等。它还将记录此类目击事件的所有特征[这些特征显然会有很大的变化:颜色、船体类型、车辆型号等],以及目击事件发生的地点 这是我困惑的ER图。 我感到困惑的是,我将/应该如何记录/引用Item_观察表中的预定义特征(在特征表中找到),因为我必须创建另一个多对多表来保存这些特征,但由于表的重复,我觉得我没有很好地实现它? 但是,我觉得——我不是100%确定为什么——将观察到的特征数据存储在查

我正在尝试创建一个数据库,它可以管理/记录许多不同机械类型的目击事件,无论是汽车、公共汽车、卡车、船只、火车等。它还将记录此类目击事件的所有特征[这些特征显然会有很大的变化:颜色、船体类型、车辆型号等],以及目击事件发生的地点

这是我困惑的ER图。

我感到困惑的是,我将/应该如何记录/引用Item_观察表中的预定义特征(在特征表中找到),因为我必须创建另一个多对多表来保存这些特征,但由于表的重复,我觉得我没有很好地实现它? 但是,我觉得——我不是100%确定为什么——将观察到的特征数据存储在查找表中也是一个不好的主意


这就引出了一个问题:是否应该将查找表作为一个单独的实体单独存在?也许更重要的是,是我的模式完全有缺陷吗?如果你还没猜到的话,我肯定不是DB设计师。感谢您的期待,干杯Dyr

您正在建模DBMS的元数据设计,但不是您的应用程序


请参阅两个问题和答案。

您是尝试在概念级别对主题中的实体建模,还是尝试在逻辑级别对数据库设计中的表建模?ER图已经用于这两个方面,但是如果你不知道你在做什么,你最终会感到困惑。要回答标题中的问题,你不需要在概念层面或逻辑层面上建模查找表。在物理数据库级别,可以单独查找表。这使图表不那么混乱,特别是对于有几十个查找表的系统。@ Gilbert Le Blanc,就像我在30年前学习的那样,在逻辑层次上做模型查找表。随着时间的推移,情况可能已经发生了变化。我注意到,Data Architect是大约15年前的建模工具,它只有一个概念模型和一个物理模型。