access教师管理系统数据库实验报告.docx
《access教师管理系统数据库实验报告.docx》由会员分享,可在线阅读,更多相关《access教师管理系统数据库实验报告.docx(10页珍藏版)》请在冰豆网上搜索。
![access教师管理系统数据库实验报告.docx](https://file1.bdocx.com/fileroot1/2023-2/3/a2074ab3-0ce5-4732-b279-8b31b74f9afa/a2074ab3-0ce5-4732-b279-8b31b74f9afa1.gif)
access教师管理系统数据库实验报告
数据库原理实验报告
一、实验目的
1、运用数据库设计方法完成某学校教师管理系统数据库设计。
设计数据库的概念模型和关系数据模型。
设计每个关系的字段名称、数据类型、数据长度。
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
Class
Teacher
Item
1
1
n
n
n
m
讲授
包括
参与
achieve
ino
iname
ilead
tage
tbirth
room
cno
cname
dname
tno
tname
tsex
dno
2、将E-R模型图转换成关系数据模型
teacher&dept:
teacher(tno,tname,tsex,tage,tbirth,dno)
class&teacher:
class(cno,cname,tno,room)
item&teacher:
参与(tno,ino,achieve)
3、设计每个关系模式的字段名
4、为每个关系模式设计实验数据
5、使用SQL设计教师管理系统数据库的查询
(1)查询所有教师的基本信息,并按教师的年龄的降序排列
SELECTteacher.*
FROMteacher
ORDERBYteacher.tagedesc
(2)查询所有课程信息
SELECTclass.*
FROMclass
(3)查询所有女教师的信息,要求显示教师的姓名、性别、年龄、出生日期和
所讲授的课程,并按出生日期的升序排序
SELECTteacher.tname,teacher.tsex,teacher.tage,teacher.tbirth,teacher_ame
FROMteacher_classINNERJOINteacherONteacher_class.tno=teacher.tno
WHERE(((teacher.tsex)="女"))
ORDERBYteacher.tbirth
(4)查询参加某项目的教师的姓名、性别、年龄,并按年龄的升序排序
SELECTteacher_item.ino,item.iname,teacher.tname,teacher.tsex,teacher.tage
FROMteacher,item,teacher_item
WHERE(teacher_item.ino="i3")AND(item.ino=teacher_item.ino)
AND(teacher.tno=teacher_item.tno)
ORDERBYteacher.tage
(5)统计每位老师讲授课程的数量,要求输出教师名称、课程数量
SELECTteacher.tname,Count(*)AScno_num
FROMteacher_classINNERJOINteacherONteacher_class.tno=teacher.tno
GROUPBYteacher.tname;
(6)查询讲授2门以上课程的教师号
SELECTteacher_class.tno
FROMteacher_class
GROUPBYteacher_class.tno
HAVING(Count(teacher_o))>2
(7)统计每个项目参加的教师人数,要求输出项目号、项目人数
SELECTteacher_item.ino,Count(teacher_item.tno)AStno_num
FROMteacher_item
GROUPBYteacher_item.ino
三、实验结果
1、查询所有教师的基本信息,并按教师的年龄的降序排列
2、查询所有课程信息
3、查询所有女教师的信息,要求显示教师的姓名、性别、年龄、出生日期和
所讲授的课程,并按出生日期的升序排序
4、查询参加某项目的教师的姓名、性别、年龄,并按年龄的升序排序
5、统计每位老师讲授课程的数量,要求输出教师名称、课程数量
6、查询讲授2门以上课程的教师号
7、统计每个项目参加的教师人数,要求输出项目号、项目人数
四、问题回答
1、数据库设计过程包括哪些步骤?
你认为哪个步骤最关键,为什么?
数据库设计包括:
需求分析阶段、概念结构设计阶段、逻辑结构设计阶段、物理结构设计阶段、数据库实施阶段、数据库运行和维护阶段。
需求分析。
需求分析阶段是数据库设计的第一步,是后续各个阶段的基础,它需要准确分析用户对系统的要求,分析是否准确、完善,将直接影响整个数据库系统的性能。
2、概念模型和数据模型有何区别和联系。
概念模型,用来描述数据及数据之间的联系,反映了最终用户综合性的信息需求。
它使数据库的设计人员在设计的初始阶段,摆脱计算机系统及DBMS的具体技术问题,与具体的数据管理系统无关。
概念数据模型必须换成逻辑数据模型,才能在DBMS中实现。
概念数据模型的容包括重要的实体及实体之间的关系。
在概念数据模型中不包括实体的属性,也不用定义实体的主键。
这是概念数据模型和逻辑数据模型的主要区别。
数据模型,这是用户从数据库所看到的模型,是具体的DBMS所支持的数据模型,逻辑数据模型反映的是系统分析设计人员对数据存储的观点,是对概念数据模型进一步的分解和细化。
3、Access数据库设计视图、数据视图和SQL视图有何区别?
设计视图,运用可视化的窗口来进行查询的设计,方便添加查询对象和条件。
数据视图,以表格的形式显示查询的结果。
SQL视图,显示的是用SQL语句编写的查询命令。
4、如何将两个字段同时定义为主键?
按住Ctrl键,用鼠标点击要选择的多个字段,选完后松开Ctrl键,按工具栏上的‘主键’按钮,即可同时定义多个字段为主键。
5、SQL设计和调试中,你遇到印象最深的问题是什么?
你是怎么解决的?
语句语确,却因为符号格式产生错误,尤其是中英文混输时,格外容易出错,且不容易发现。
解决方法:
尽量少用或不用中文字符,以省去来回切换的麻烦和避免符号格式出错。