MySQL:分析商城案例,建立数据库和表

 

E-R图

 

 

--用户
create table user(
  uid int primary key auto_increment,
  username varchar(10),
  password varchar(15),
  phone varchar(11)    
);
--不用int存phone的原因是手机号太大了,超出了4个字节的int的表数范围,溢出,而且不方便对手机号进行操作

--订单
create table orders(
  oid int primary key auto_increment,
  sum int,
  time timestamp,
  address varchar(50),
  uno int,
  foreign key(uno) references user(uid)         
);
--order是保留字,不要用它作为表名!!!

--商品分类
create table category (
  cid int primary key auto_increment,
  cname varchar(10)
);

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

--订单项
create table orderitem(
  ono int,
  pno int,
  foreign key(ono)  references orders(oid),
  foreign key(pno)  references product(pid),
  count int,
  subsum double            
);

 

posted @ 2020-04-17 21:05  yxfyg  阅读(557)  评论(0)    收藏  举报