【发布时间】:2011-01-12 12:04:22
【问题描述】:
这是一个通用的数据库问题,与任何特定的数据库或编程语言无关。
我以前做过一些数据库工作,但通常都是可行的。这次我要为未来做打算。
我有一个存储备件列表的表。名称、部件号、位置等。我还需要存储它们也适用的设备。
一种方法是在我的备件表中为每个设备创建一个列。这就是在当前数据库中完成的方式。一个问题是,如果将来我想添加一个新设备,我必须创建一个新列,但这会使编程更容易。
我的想法是创建一个单独的适用性表。它将存储部件 ID 和设备 ID,如果一个部件适用于多个设备,它将有不止一行。
Parts
-------
ID
Name
Description
Etc...
PartsApplicability
-------
ID
PartID
DeviceID
Devices
------
ID
Name
我的问题是这是否是一种有效的方法,它会比原来的方法更有优势吗?还有更好的方法吗?
感谢您的任何回答。
【问题讨论】:
-
在设计数据库时不要专注于“使编程更容易”。正确的数据库设计将迫使你成为一个更好的程序员,这将使编程更容易。