网上商城3---订单模块

订单模块是指将准备购买的商品变成已经购买的商品,分为以下几步:

1)提交订单,获得购物车和对应的用户信息,将数据封装到Order里;

2)调用service保存订单,并将购物车的信息清空;

3)请求转发到订单详情模块


准备工作:

创建表


顺手在这里普及一下表的关联

alter table 从表名 add [constraint] [外键名称] foreign key(从表中的外键字段名) references 主表(主表的主键);


扫描二维码关注公众号,回复: 1731543 查看本文章

外键名称的作用: 用于删除外键约束,一般建议以“_fk”结尾。

表与表之间的关系

一对多

【建表原则】:在从表(多方)中创建一个字段,该字段作为外键指向主表(一方)的主键。

多对多

【建表原则】:需要创建第三张表(作为中间表),中间表至少两个字段(两个外键),这两个字段分别作为外键指向各自多方的主键。 
原理:将一个多对多拆分成两个一对多(两张表都是中间表的主表)。


多对多练习

1.订单表

create table orders(
    oid varchar(32) primary key,
    totalprice double
);

2.订单项表

create table orderitem(
    oid varchar(50),
    pid varchar(50)
);

3.联合主键

alter table orderitem add primary key(oid,pid);

4.订单表和订单项表的主外键关系

alter table orderitem add constraint orderitem_orders_fk foreign key(oid) references orders(oid);

5.商品表和订单项表的主外键关系

alter table orderitem add constraint orderitem_product_fk foreign key(pid) references product(pid);








代码实现








猜你喜欢

转载自blog.csdn.net/zhouboke/article/details/80529089