- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
word完美格式
精心整理 学习帮手
数据库原理 实验报告
一 、实验目的
运用数据库设计方法完成某学校教师管理系统数据库设计。设计数据库的概念模型和关系数据模型。设计每个关系的字段名称、数据类型、数据长度。
2、 熟悉Access关系数据库管理系统。根据实验1的设计结果创建关系数据库,定义数据表,定义主键,完成数据的插入、删除和更新操作。
3、 使用SQL设计教师管理系统数据库的简单查询和复杂查询。掌握SELECT语句的基本语法。掌握单表和多表的投影查询、选择查询、排序查询、合计函数查询的SQL设计方法。
二、实验内容及步骤
1、写出 ‘某学校教师管理系统’中每个实体、联系的属性
teacher (tno,tname,tsex,tage,tbirth)
dept (dno,dname )
class (cno,cname)
item (ino,iname,ilead)
讲授 (room)
参与 (achieve )
2、画出教师管理系统E-R模型图
Teacher
Teacher
Class
Teacher
Item
1
1
n
n
n
m
讲授
包括
参与
achieve
ino
iname
ilead
tage
tbirth
room
cno
cname
dname
tno
tname
tsex
dno
将E-R模型图转换成关系数据模型
teacherdept : teacher (tno,tname,tsex,tage,tbirth,dno)
classteacher : class (cno,cname,tno,room)
itemteacher : 参与 (tno,ino,achieve)
设计每个关系模式的字段名
为每个关系模式设计实验数据
使用SQL设计教师管理系统数据库的查询
查询所有教师的基本信息,并按教师的年龄的降序排列
SELECT teacher.*
FROM teacher
ORDER BY teacher.tage desc
查询所有课程信息
SELECT class.*
FROM class
查询所有女教师的信息,要求显示教师的姓名、性别、年龄、出生日期和
所讲授的课程,并按出生日期的升序排序
SELECT teacher.tname, teacher.tsex, teacher.tage, teacher.tbirth, teacher_class.cname
FROM teacher_class INNER JOIN teacher ON teacher_class.tno = teacher.tno
WHERE (((teacher.tsex)=女))
ORDER BY teacher.tbirth
查询参加某项目的教师的姓名、性别、年龄,并按年龄的升序排序
SELECT teacher_item.ino, item.iname, teacher.tname, teacher.tsex, teacher.tage
FROM teacher, item, teacher_item
WHERE (teacher_item.ino=i3) AND (item.ino=teacher_item.ino)
AND (teacher.tno=teacher_item.tno)
ORDER BY teacher.tage
统计每位老师讲授课程的数量,要求输出教师名称、课程数量
SELECT teacher.tname, Count(*) AS cno_num
FROM teacher_class INNER JOIN teacher ON teacher_class.tno = teacher.tno
GROUP BY teacher.tname;
查询讲授2门以上课程的教师号
SELECT teacher_class.tno
FROM teacher_class
GROUP BY teacher_class.tno
HAVING (Count(teacher_class.cno))2
统计每个项目参加的教师人数,要求输出项目号、项目人数
SELECT teacher_item.ino, Count(teacher_item.tno) AS tno_num
FROM
文档评论(0)