多表之间的关系
1.一对一
人和身份证
2.一对多(多对一)
部门和员工
3.多对多
学生和课程
多表之间关系的实现
1.一对多(多对一)
如:部门和员工
实现方式:在多的一方建立外键,指向一的一方的主键
2.多对多
多对多关系实现需要借助第三张中间表
中间表至少要包含两个字段
这两个字段作为第三张表的外键
分别指向两张表的主键
3.一对一(了解即可)
可以在任意一方添加 唯一 外键指向另一方的主键
一般情况合成一张表
多表关系 案例
-- 创建旅游线路分类表 tab_category
-- cid 旅游线路分类主键,自动增长
-- cname 旅游线路分类名称非空,唯一,字符串100
create table tab_category(
cid int primary key auto_increment,
cname varchar(100) not null unique
);
-- 创建旅游线路表 tab_route
-- rid 旅游线路主键,自动增长
-- rname 旅游线路名称非空,唯一,字符串100
-- price 价格
-- rdate 上架时间,日期类型
-- cid 外键,所属分类
create table tab_route(
rid int primary key auto_increment,
rname varchar(100) not null unique,
price doule,