假设我有一个名为Apple_Jobs
的表。
它定义来自Apple_Server
的作业。
现在假设我有另一台名为Orange_Server
我应该
Apple_Jobs
的属性修改现有Origin
表,该属性定义作业的来源 - AppleServer
或OrangeServer
。OR
Orange_Jobs
表。使用第一个选项,我需要将某些应用程序现有的查询和存储过程修改为仅包含AppleServer
原始作业,第二个选项我不需要修改任何存储过程。
每个表的结构都是一样的。
答案 0 :(得分:2)
如果你发现自己创建了一个名为的表 AppleServer OrangeServer PearServer
甚至是PomograniteServer
你有一个严重的问题,修复它会创建一个名为type的字段,其中包含“Apple”,“Orange”,“Pear”和臭名昭着的“Pomogranite”等可用值。
不要继续添加表格,这会让你的生活更加可怜。 如果您需要特定的水果服务器,则查询一个表:
SELECT blah FROM MyTable WHERE Type="Orange"
答案 1 :(得分:1)
始终瞄准最大database normalization(当然,这是有道理的)。在您的情况下,我建议您创建一个ServerType
(查找/元)表,其中包含您的服务器类型列表(例如Orange,Apple,Watermelon等)。然后在ServerTypeID
表中添加Jobs
列,该列将是ServerType
表的外键。