浅谈数据库设计技巧

在阅读了这篇资料之后有感,了解数据库设计时需要有长远的眼光。

以商品信息表的设计为例子。(省去其他关联的表)

商品信息表(Wares_info)
名称         类型     约束条件    说明
wares_id       int      无重复       商品标识,主键
wares_name     char(100)   不允许为空      商品名称
wares_type     int    不允许为空    商品类型标识,和Wares_type.type_id关联
wares_info      char(200)  允许为空 相关信息
provider      int      不允许为空 供货厂商标识,和Wares_provider.provider_id关联
setnum        int    初始值为1     内含件数,默认为1
stock        int     初始值为0     库存,默认为0
buy_price     money   不允许为空     进货价
sell_price     money   不允许为空     销售价
discount     money   不允许为空     优惠价

这里写图片描述

当需要添加一个商品图片的字段,不过只有一部分商品有图片时,一般设计思路是添加一张表(因为一个商品的图片有很多张)。

这里写图片描述

这时候提出新的需求,某类商品全部都需添加“长 度”的属性。

这里写图片描述

这时候又提出新的需求(有猫饼),某类商品全部都需添加“宽度”的属性。

这里写图片描述


对,这样每添加一次需求,就要更改数据库表设计。于是就打回重做,来个更人性化的设计(程序员也是人啊)。

这里写图片描述

在商品额外属性表(Wares_ex_property)中添加2条记录:
ex_pid    p_name
1     商品图片
2     商品长度
再在整个电子商务平台的后台管理功能中追加一项商品额外属性管理的功能,以后添加新的商品时出现新的属性,只需利用该功能往商品额外属性表
(Wares_ex_property)中添加一条记录即可。

再次感谢作者分享的经验。
http://blog.csdn.net/zhuangzhineng/article/details/4029522

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值