MySQL操作-2 (笔记)

1.多表关系维护

外键约束:forerign key

  • 给product 添加一个外键约束
alter table product add foreign key (cno) REFERENCES category(cid)
  • 多表建表原则
  1. 一对一
  1. 一对多 : 商品和分类

建表原则 :在多的一方添加外键 指向一的一方主键

商品表
分类表
  1. 多对多

建表原则 : 多建一张中间表,将多对多的关系拆成一对多的关系,中间至少要有两个外键;这两个外键分别指向原来那张表

表格

实际操作: 用的不很多 (拆表操作)

  • 多表之间得关系维护:外键约束:foregin key
  • 添加一个外键:alter table product add foregin key (cno) references cartory(cid)

foregin key (cno) references cartory(cid)
删除得时候,先删除外键关联得所有数据,才能在删除分类得数据

2.多表查询

-- 数据准备
insert into product VALUES(null,'耐克',300,NULL,null)

select * from product


select *from product  p,category  c  where p.cno=c.cid

-- 内连接
-- 隐式内连接
select *from product  p,category  c  where p.cno=c.cid

-- 显示内连接
select * from product p inner join category c on p.cno=c.cid

-- 区别
 --      隐式内连接:在查询结果得基础上做的where条件过滤
 --      显示内连接: 带着条件去去查询结果  这个效率高点

-- 左外连接
-- 会将左表中的所有数据查询出来 如果右表没有对应的数据 用null代替

select * from product p left outer join category c on p.cno=c.cid


insert into category VALUES(100,'电脑办公','Apple、外星人')

select * from category

-- 右外连接
-- 会将右表中的所有数据查询出来 如果左表没有对应的数据 用null代替
select * from product p right outer join category c on p.cno=c.cid

3. 分页查询

-- 第一个是索引 第二个是显示的个数
select * from  product limit 0,10
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容