陷入数据库结构与许多种类的表

时间:2015-08-04 10:49:32

标签: mysql database relational-database

我通过E / R图创建了一个DB结构,但是我有几天因为这个问题而陷入困境。我做错的方式可能是错的,所以如果你认为我能以更好的方式做到这一点,那将是可爱的:)

情景是: 我有N个用户拥有N个传感器,并非所有传感器(将来可以增加到300种传感器)具有相同的功能(列),所以我想我需要一个表用于每个传感器然后列出内部值收集。

structure

我对如何将表格用于"类型传感器" - "传感器"我应该把哪些列放在"传感器上?#34;表,也是这样我会得到很多表。你有什么提示吗?

3 个答案:

答案 0 :(得分:1)

介绍传感器和功能之间的多对多关系可能会更好吗?例如:

Sensors
 sensor_id (pk)
 type

Features
 feature_id (pk)
 name

SensorsFeatures (Ownership table)
 sensor_id (foreign key to Sensors.sensor_id)
 feature_id (foreign key to Features.feature_id)

如果您需要存储这些功能的值(重量,高度,宽度......),您可以在SensorsFeatures表中执行此操作。

答案 1 :(得分:1)

最简单,最简单的方法是在表中创建“传感器”中的所有特定列,并将一个外键用于另一个表“sensor_type”,该表由2列组成

table "sensor_type"
id_type  - identifier (primary key)
description - description of your sensor (heat, temperature sensor ... )

您的表传感器看起来像

table "sensor"
id_sensor                       identifier (primary key)
id_type                         foreign key references sensor_type table
size                            default null, if type 2 or 3 then something
weight                          default null, if type 1 and 3 then something
etc...

您需要了解这可能是解决您问题的众多解决方案之一。我希望它有所帮助。

答案 2 :(得分:0)

您应该添加新表格,例如所有传感器的sensor_type,其中每一行都是具有uniq id的传感器,可以添加到用户。

我们的想法是将传感器与类型或其他传感器分开,这是最常见的传感器。