2009-12-12 103 views
1

可以向我解释一下数据库设计如何看起来像以下方法: 假设有两个表'玩具'和'愿望清单'。每个心愿单都有一个玩具,但“玩具”不包含世界上所有的玩具。为了防止不愉快的孩子让我们给玩具添加一行称为“杂项”的玩具,以便他们可以在文本输入中指定他们喜欢的玩具,这就是问题的开始。我不知道在哪里存储这些数据。存储没有默认值

+3

你是圣诞老人吗? – 2009-12-12 09:26:24

+0

2.0:D顺便说一句,这是一个非常棒的主板。 – antpaw 2009-12-12 12:56:37

+0

@antpaw:欢迎光临:) – 2009-12-12 14:35:40

回答

2

我想你自己回答了这个问题:

(assuming only one wishlist per customer) 

wishlist_items 
- customer_id 
- toy_id 

toys 
- toy_id 
- description 
- type (permanent/customer-defined) 

因此,当客户问一个未知的玩具,你只需将其写入玩具名单。

0

嗯...你可能想要给玩具添加一列,这将定义玩具是由“设计”还是由用户添加。 所以你可以仍然喜欢之间是什么故意在列表和玩具的愿望清单,并分离玩具什么是杂...

tblTOYS:

TOYID,TOYNAME,的sourceID

tblTOYSOURCES

的sourceID,SOURCENAME

0

让他们重新命名的玩具从 '杂项',以他们想要的东西。所以你根本不需要改变数据库结构,孩子们可以看到自己喜欢的玩具名称,而不是“杂项:战斗机器人”。它更人性化。