-- 学生实体,班级实体 1:N关系
CREATE TABLE Class
(
id int PRIMARY KEY, --班级编号
name nchar(10) --班级名称
)
CREATE TABLE Student
(
id int PRIMARY KEY, --学号
name nchar(10) ,--姓名
age smallint,--年龄
classId int --学生所在班级号 (关系合并到N端的实体)
)
-- 老师实体,班级实体 1:1关系
CREATE TABLE Teacher
(
id int PRIMARY KEY, --老师编号
name nchar(10) ,--老师姓名
classId int--管理的班级 (关系合并到任意一端的实体)
)
-- 学生实体,课程实体 M:N关系
CREATE TABLE Course
(
id int PRIMARY KEY, --课程编号
name nchar(10) --课程名称
)
CREATE TABLE StuScore
(
stuId int , --学号
courId int /*课程名称 */ PRIMARY KEY(stuId,courId), --复合主键
score smallint --成绩
)
-- 老师实体,课程实体 N:1关系
-- 将关系合并到N端实体(PPT演示的) 或者 建立一张老师教课表
CREATE TABLE TeaCou
(
teaId int PRIMARY KEY , --老师编号
courId int --课程编号
)
---SQL语句的示例
--查询每个学生的班级与班主任老师
SELECT s.name 学生姓名, c.name 班级, t.name 班主任 FROM Student s , Class c , Teacher t
WHERE ( s.classId = c.id AND c.id = t.classId)
--查询每个学生的课程与成绩
SELECT s.name 学生姓名, c.name 课程, ss.score 分数 FROM Student s , Course c , StuScore ss
WHERE ( s.id = ss.stuId AND c.id = ss.courId)
--查询每个老师负责的课程与管理的班级
SELECT t.name 老师姓名, co.name 课程, c.name 管理的班级 FROM Teacher t , Course co , Class c
WHERE ( t.classId = c.id AND t.courId = co.Id)
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
3天掌握SQL Server 2012 数据库脚本.rar (25个子文件)
SQL脚本
024.sql 544B
022.sql 534B
016.sql 824B
014.sql 181B
008.sql 609B
027.sql 678B
029.sql 949B
032.sql 2KB
019.sql 524B
010.sql 291B
015.sql 496B
007.sql 272B
012.sql 224B
011.sql 272B
026.sql 1KB
030.sql 243B
023.sql 488B
018.sql 321B
025.sql 953B
013.sql 148B
020.sql 763B
009.sql 638B
017.sql 387B
021.sql 534B
028.sql 1KB
共 25 条
- 1
资源评论
程序员黄老师
- 粉丝: 2359
- 资源: 46
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功