0

我正在做一个项目,我希望允许最终用户在创建硬件设备列表时基本上添加无限量的资源。

在这种情况下,他们可以存储硬盘驱动器的数量和类型。硬盘驱动器类型已经存储在 MySQL 数据库表中,具有所有潜在选项,因此它们可以设置数量、选择驱动器类型(从下拉框中)以及根据需要添加更多条目。

由于我不想使用“drive1amount”、“drive1typeid”、“drive2amount”、“drive2typeid”等创建数据库,所以最好的方法是什么?

我已经看到用多对多链接表回答了类似的问题,但想不出我怎么能用它来解决这个问题。

4

2 回答 2

0

您的答案在一定程度上取决于您对该项目的长期目标。如果您想拥有一个数据存储库,其中包含所有不同类型的硬件设备及其规格的配置文件,我建议您维护每种不同类型硬件的硬件表。例如,您将有一个硬盘表,其中包含所有不同型号和类型的硬盘。然后,您可以将这个特定表中的一条记录分配给主机配置表。您可以根据用户的输入构建数据集。

如果您不清楚,请告诉我,我将创建一个图表并为您上传。

于 2013-06-29T14:39:00.243 回答
0

像这样的东西?

CREATE TABLE `hardware` (
 `id` int(11) NOT NULL AUTO_INCREMENT,
 `name` varchar(256) NOT NULL,
 `quantity` int(11) NOT NULL,
 `hardware_type_id` int(11) NOT NULL,
 PRIMARY KEY (`id`),
 KEY `type_id` (`hardware_type_id`),
 CONSTRAINT `hardware_ibfk_1` FOREIGN KEY (`hardware_type_id`) REFERENCES `hardware_type` (`id`)
) ENGINE=InnoDB 

hardware_type_id 是现有表的外键

这样,桌子不在乎它是什么硬件

于 2013-06-29T15:02:19.183 回答