MySQL数据库基础(七):商城案例的创建 您所在的位置:网站首页 mysql建表三大范式 MySQL数据库基础(七):商城案例的创建

MySQL数据库基础(七):商城案例的创建

2023-08-17 13:29| 来源: 网络整理| 查看: 265

** 1、商城案例所有的表 用户表、订单表、商品表、商品分类

用户表

用户ID用户名密码手机号

中间表

cnopno

订单表

订单编号订单总价下单时间收货地址外键uno(指向用户表的用户ID)

商品表

商品编号商品名称商品价格外键cno(指向商品分类表的分类ID)

商品分类

分类ID分类名称分类描述 2、商城案例的分析 用户表与订单表:一对多(订单表加外键指向用户表的用户ID) 一个用户可以有多个订单,所以是一对多商品分类与商品表:一对多(商品表中加外键指向商品分类表的ID) 一个商品分类中有多个商品,所以是一对多订单表与商品表:多对多(中间表:创建一张两列的表oid指向订单编号,pno指向商品编号。) 一个订单里可以有多个商品,一个商品也可以在多个订单里,所以是多对多 3、建表

3.1 用户表

创建用户表(用户ID、用户名、密码、手机)

create table user ( uid int primary key auto_increment, username varchar(31), password varchar(31), phone varchar(11) );

用户表中插入数据

insert into user values(null,'zhangsan','123','13633338888');

3.2 订单表 创建订单表(订单编号、总价、下单时间、地址、外键用户的ID)

create table orders( oid int primary key auto_increment, sum int not null, otime timestamp, address varchar(100), uno int, foreign key(uno) references user(uid) );

订单中插入数据

insert into orders values(null,200,null,'西安工业大学',1); insert into orders values(null,300,null,'苏席村',1);

3.3商品分类表 创建商品分类表(分类ID、分类名称、分类描述)

create table category( cid int primary key auto_increment, cname varchar(15), cdesc varchar(100) );

插入数据

insert into category values(null,'手机数码','电子产品'); insert into category values(null,'鞋靴箱包','生活用品'); insert into category values(null,'香烟酒水','黄鹤楼,二锅头'); insert into category values(null,'酸奶饼干','娃哈哈,纯甄'); insert into category values(null,'零食','瓜子,花生,辣条');

3.4商品表 创建商品表(商品ID、商品名称、商品价格、外键cno)

create table product( pid int primary key auto_increment, pname varchar(10), price double, cno int, foreign key(cno) references category(cid) );

插入数据

insert into product values(null,'小米8',4999,1); insert into product values(null,'锤子',66,1); insert into product values(null,'阿迪',2000,2); insert into product values(null,'老村长',88,3); insert into product values(null,'劲酒',35,3); insert into product values(null,'小熊饼干',3.5,4); insert into product values(null,'娃哈哈',10,4); insert into product values(null,'卫龙辣条',3,5); insert into product values(null,'旺旺雪饼',2,5);

3.5订单项

3.5.1 创建订单项:中间表(订单ID、商品ID、商品数量、订单总价)

create table orderitem( ono int, pno int, foreign key(ono) references orders(oid), foreign key(pno) references product(pid), ocount int, subsum double );

3.5.2 给1号订单添加200元商品 查看商品表

select * from product;

在这里插入图片描述 买50个旺旺雪饼,10个娃哈哈,刚好200元

insert into orderitem values(1,18,50,100); insert into orderitem values(1,16,10,100);

3.5.3 给2号订单添加300元商品 买100个卫龙辣条

insert into orderitem values(2,17,100,300);

在这里插入图片描述



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有