小型电商(一) ——— 数据库设计

这里先记录一下什么是惟一索引:数据库

主键必定是惟一性索引,惟一性索引并不必定就是主键。 所谓主键就是可以惟一标识表中某一行的属性或属性组,一个表只能有一个主键,但能够有多个候选索引。由于主键能够惟一标识某一行记录,因此能够确保执行数据更新、删除的时候不会出现张冠李戴的错误。主键除了上述做用外,经常与外键构成参照完整性约束,防止出现数据不一致。数据库在设计时,主键起到了很重要的做用。 spa

其实主键和索引都是键,不过主键是逻辑键,索引是物理键,意思就是主键不实际存在,而索引实际存在在数据库中,主键通常都要建,主要是用来避免一张表中有相同的记录,索引通常能够不建,但若是须要对该表进行查询操做,则最好建,这样能够加快检索的速度。设计

表结构:

 用户表:

分类表:

由于咱们得为后期考虑,由于咱们要扩展,因此表结构设计为递归 3d

产品表:

 

 

购物车表:

支付信息表:

订单表:

订单明细表:

收货地址表:

 

蓝色的是有索引的表blog

 

首先注册完成以后会存到咱们的 mmall_user 表里面 登陆会读取 mmall_user 进行验证递归

而后咱们搜索产品 这个时候就会用到咱们的 mmall_category 分类表 而后传给咱们的产品表 mmall_product 而后购选咱们的商品放到购物车表中 mmall_cart,当我选好以后就进到了咱们的收货地址表中 mmall_shipping  ,从收货地址表中获取到 订单 和订单明细 mmall_order_item 和 mmall_order 在接收到支付宝的回调,把数据存到咱们的支付信息表中。索引