多对对关系--参考郝斌老师

2024-09-02 12:48
文章标签 关系 老师 参考 郝斌

本文主要是介绍多对对关系--参考郝斌老师,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

如果是两张表是多对多的关系,产生联系,必须借助于两位一张表。比如班级跟老师的关系。一个班级可能有多个老师教,一个老师也可能教多个班级。所以要借助于第三个表。

第三个表跟两张表分表产生关系后,那么两张表就有关系了。

如下代码:

create database aa--创建班级表
create table ClassRoom
(	ClassRoom_id int primary key,ClassRoom_num int not null,ClassRoom_name nvarchar(100)
)
--插入数据
insert into ClassRoom  values(1,20,'java培训1班')
insert into  ClassRoom  values(2,30,'java培训2班')
insert into  ClassRoom  values(3,15,'java培训3班')
insert into  ClassRoom  values(4,50,'java培训4班')--创建教室表
create table Teacher
(Teacher_id int primary key,Teacher_name nvarchar(200)
)
--插入数据
insert into Teacher values(1001,'aa')
insert into Teacher values(1002,'bb')
insert into Teacher values(1003,'cc')
insert into Teacher values(1004,'dd')-- 创建第三张表 来模拟班级和教室的关系 三列的组合的是主键
create table ClassRoom_Teacher_Mapping
(ClassRoom_id int not null,Teacher_id int not null,Course nvarchar(20) not null
) 
--插入数据
insert into ClassRoom_Teacher_Mapping values(1,1001,'JAva')
insert into ClassRoom_Teacher_Mapping values(1,1001,'C')
insert into ClassRoom_Teacher_Mapping values(2,1002,'SSH')
insert into ClassRoom_Teacher_Mapping values(4,1003,'SSH')--给第三张表(三列的组合)创建主键
alter table ClassRoom_Teacher_Mapping
add constraint pk_Class_Teacher_Course 
primary key(ClassRoom_id,Teacher_id,Course)--给第三张表添加外键fk_ClassRoom_id 联系跟ClassRoom表的关系 alter table ClassRoom_Teacher_Mapping
add constraint fk_ClassRoom_id 
foreign key(ClassRoom_id) references ClassRoom(ClassRoom_id)
--给第三张表添加外键 fk_Teacher_id 联系跟 Student 表的关系 
alter table ClassRoom_Teacher_Mapping
add constraint fk_Teacher_id 
foreign key(Teacher_id) references Teacher(Teacher_id)


这篇关于多对对关系--参考郝斌老师的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1129996

相关文章

Springboot项目构建时各种依赖详细介绍与依赖关系说明详解

《Springboot项目构建时各种依赖详细介绍与依赖关系说明详解》SpringBoot通过spring-boot-dependencies统一依赖版本管理,spring-boot-starter-w... 目录一、spring-boot-dependencies1.简介2. 内容概览3.核心内容结构4.

Java中数组与栈和堆之间的关系说明

《Java中数组与栈和堆之间的关系说明》文章讲解了Java数组的初始化方式、内存存储机制、引用传递特性及遍历、排序、拷贝技巧,强调引用数据类型方法调用时形参可能修改实参,但需注意引用指向单一对象的特性... 目录Java中数组与栈和堆的关系遍历数组接下来是一些编程小技巧总结Java中数组与栈和堆的关系关于

java中新生代和老生代的关系说明

《java中新生代和老生代的关系说明》:本文主要介绍java中新生代和老生代的关系说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、内存区域划分新生代老年代二、对象生命周期与晋升流程三、新生代与老年代的协作机制1. 跨代引用处理2. 动态年龄判定3. 空间分

Tomcat版本与Java版本的关系及说明

《Tomcat版本与Java版本的关系及说明》:本文主要介绍Tomcat版本与Java版本的关系及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Tomcat版本与Java版本的关系Tomcat历史版本对应的Java版本Tomcat支持哪些版本的pythonJ

python安装whl包并解决依赖关系的实现

《python安装whl包并解决依赖关系的实现》本文主要介绍了python安装whl包并解决依赖关系的实现,文中通过图文示例介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录一、什么是whl文件?二、我们为什么需要使用whl文件来安装python库?三、我们应该去哪儿下

MYSQL关联关系查询方式

《MYSQL关联关系查询方式》文章详细介绍了MySQL中如何使用内连接和左外连接进行表的关联查询,并展示了如何选择列和使用别名,文章还提供了一些关于查询优化的建议,并鼓励读者参考和支持脚本之家... 目录mysql关联关系查询关联关系查询这个查询做了以下几件事MySQL自关联查询总结MYSQL关联关系查询

POJ1269 判断2条直线的位置关系

题目大意:给两个点能够确定一条直线,题目给出两条直线(由4个点确定),要求判断出这两条直线的关系:平行,同线,相交。如果相交还要求出交点坐标。 解题思路: 先判断两条直线p1p2, q1q2是否共线, 如果不是,再判断 直线 是否平行, 如果还不是, 则两直线相交。  判断共线:  p1p2q1 共线 且 p1p2q2 共线 ,共线用叉乘为 0  来判断,  判断 平行:  p1p

pip-tools:打造可重复、可控的 Python 开发环境,解决依赖关系,让代码更稳定

在 Python 开发中,管理依赖关系是一项繁琐且容易出错的任务。手动更新依赖版本、处理冲突、确保一致性等等,都可能让开发者感到头疼。而 pip-tools 为开发者提供了一套稳定可靠的解决方案。 什么是 pip-tools? pip-tools 是一组命令行工具,旨在简化 Python 依赖关系的管理,确保项目环境的稳定性和可重复性。它主要包含两个核心工具:pip-compile 和 pip

基于SpringBoot的宠物服务系统+uniapp小程序+LW参考示例

系列文章目录 1.基于SSM的洗衣房管理系统+原生微信小程序+LW参考示例 2.基于SpringBoot的宠物摄影网站管理系统+LW参考示例 3.基于SpringBoot+Vue的企业人事管理系统+LW参考示例 4.基于SSM的高校实验室管理系统+LW参考示例 5.基于SpringBoot的二手数码回收系统+原生微信小程序+LW参考示例 6.基于SSM的民宿预订管理系统+LW参考示例 7.基于

读软件设计的要素04概念的关系

1. 概念的关系 1.1. 概念是独立的,彼此间无须相互依赖 1.1.1. 一个概念是应该独立地被理解、设计和实现的 1.1.2. 独立性是概念的简单性和可重用性的关键 1.2. 软件存在依赖性 1.2.1. 不是说一个概念需要依赖另一个概念才能正确运行 1.2.2. 只有当一个概念存在时,包含另一个概念才有意义 1.3. 概念依赖关系图简要概括了软件的概念和概念存在的理