mysql 商品数据库设计_mysql – 数据库设计(商店产品)

我目前在我的数据库,商店和产品中有2个表.每个产品都有自己的ID 1-2000,每个商店都有自己的ID 1-200.

我关于数据库设计的问题是,我如何跟踪每家商店的产品?

>例子

>商店1有产品1,5,10,200

>商店2有产品2,5,7,100

>商店3有产品1,7,10,300

>等……

>我的store表中是否有一个列,其id存储为由{1; 5; 10; 20}之类的列分隔的字符串(可能在1个字符串中有数千个条目)?

>我是否应该只有[id | storeID | productID]的另一个表(表中存储(x)产品的可能性)?

解决方法:

您的问题可以通过实体关系图(使用dia创建)建模:

.

有两个实体“产品”和“商店”,这些实体之间存在m-n关系“股票”. “product”具有唯一确定产品的属性“productId”. “store”具有唯一属性“storeId”,该属性唯一地确定商店.

我添加了“quanity”,“storeAddress”和“productName”属性,使模型更复杂一些.这些属性不能通过您的描述派生,如果您希望设计遵循您的描述,可以从图表和结果表中删除它们. n-m-realtionship意味着商店可以存储不同的产品,并且产品可以在不同的商店中存货.我们有以下问题:

>每个商店都有唯一的ID和地址

>每个产品都有一个唯一的Id和一个名称

>商店可以存储不同数量的不同产品

最后一句话也可以用这种方式表达

>产品可以存放在不同数量的商店中

这样的图可以在关系模型中转换.每个实体都是一个表,其中属性是列.唯一标识符是主键. m-n-relation是一个表,其中主键是a(storeId,productId)对.如果关系具有属性,则此属性是表中的列.

所以我们有以下关系(表)

store("storeId", storeAddress)

product("productId",productName)

stock("storeId","productId",quantity)

标签:mysql,database-design

来源: https://codeday.me/bug/20190806/1595460.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值