我已经创建了以下数据库布局,并开始编写应用程序代码。我读得越多,就越意识到我的数据库布局可能是不正确的/低效的/不好的想法。在我使用这个布局开发太多代码之前,我想确保我做的是“正确的”。
基本上,我有一个大约2000家商店的列表,以及一个大约50个促销代码的列表。我需要存储每个代码在每个商店是否有效。现在,我选择将每个商店编号存储为列标题,第一列包含所有不同的可能代码。到目前为止表的一部分的Here's an image (1表示代码有效,0表示在该存储中无效)。
促销代码将相对频繁地更改,但门店编号应该是相对静态的,并且不会有太大的变化。
这是我第一次从头开始创建这样的数据库,而且我是一个使用mysql的初学者,所以任何帮助都是非常感谢的!
发布于 2012-03-25 07:41:48
你最好在你的商店里放一张桌子。如果不这样做,当添加一个商店时,您将花费大量时间来添加一个新字段……
以下是我会做的事情:
table store will contains your 2000s stores
id
name
table code will contains your 50 codes
id
name
table code_store will contains only the valid codes ID, and related store_id(no need to save invalid ones I guess)
code_id
store_id发布于 2012-03-25 07:44:53
这种类型的关系称为多对多。对于这种情况,我通常有三个表。一个表用于商店,一个表用于促销代码,第三个关系表具有两列:商店id和促销id。
https://stackoverflow.com/questions/9856640
复制相似问题