2012-08-15 107 views
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... 
... 

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

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

我想补充一点,很少(几乎从不)变化的数据,并且增加也是每月两次。

ty。

回答

0

您需要多个表格。

“associated_service” 会是这样另一个表:

device_id service 

以类似的方式, “associated_device” 将是一个表:

device_id associated_device 

每一种可以有多个行的一个DEVICE_ID

对于不同的设备类型,“data_specific_to_device”是否有不同的列?在这种情况下,您可能希望为每种设备类型分配一个表格,并再次通过设备的device_id索引以获取正确的列。

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

+0

通过在各种表格中维护信息,我可以获得什么好处。你看到什么缺点与上面的计划(表结构)?好好教育。 TY。 – rajeev 2012-08-15 20:01:54