0

我必须将这些数据保存在 MySql 中,但我不确定(因为 SQL/databse 不是我的领域)如何将其组织到一个或多个表中?现在我将表示我的信息如下:

device_name|HW_version|SW_version|IP_addr_pvt|IP_addr_pub|data_specific_to_device|associated_service   |associated_device
dev_x      | 1234     |1234      |1.2.3.4    |9.8.7.6    |data_specific_to_x     |SVC_A,SVC_B,SVC_C... |dev_y,dev_z,dev_n,dev_m...
dev_y      | 2348     |7734      |10.2.3.4   |99.8.7.6   |data_specific_to_y.....|SVC_B,SVC_X...       |dev_x,dev_m...
dev_z      | 3934     |5634      |11.2.3.4   |79.8.7.6   |data_specific_to_z.....|SVC_M                |dev_n,dev_m...
...

请建议。什么是最好的设计?data_specific_to_device 可能不止一列,因为我可以更多地探索数据。

我真的需要一个 device_id 字段吗?任何 SQL 表通常都有的。

我想添加很少(几乎从不)更改的数据,并且添加也是每月两次。

泰。

4

1 回答 1

0

您需要多个表。

“关联服务”将是另一个像这样的表:

device_id service

以类似的方式,“关联设备”将是一个表:

device_id associated_device

其中每一个都可以有多个用于一个 device_id 的行

“data_specific_to_device”对于不同的设备类型是否有不同的列?在这种情况下,您可能希望为每种设备类型提供单独的表,再次由设备的 device_id 索引以获取正确的列。

编辑:如果您的设备名称是唯一的,并且您不想更改它们,则可以将它们用作 device_id。您只需要适合跨表查找设备的东西。

于 2012-08-15T18:44:58.853 回答