数据库及其应用实践报告.docx
《数据库及其应用实践报告.docx》由会员分享,可在线阅读,更多相关《数据库及其应用实践报告.docx(24页珍藏版)》请在冰豆网上搜索。
![数据库及其应用实践报告.docx](https://file1.bdocx.com/fileroot1/2022-11/17/dc6fb561-1d17-4357-a28e-9b33ac72913f/dc6fb561-1d17-4357-a28e-9b33ac72913f1.gif)
数据库及其应用实践报告数据库及其应用实践报告数据库及其应用实验报告实验序号:
B0901000-02实验项目名称:
数据库设计及数据库创建与应用学号姓名专业、班实验地点指导教师时间一、实验目的及要求
(一)实验项目1:
数据库和表1熟悉Access中数据库及表的概念。
了解并掌握建立数据库、表和关系的过程。
2熟悉数据库窗口的界面特点,掌握数据库窗口几种设置方法。
3理解并掌握关系数据库完整性基本概念。
掌握完整性的设置方法。
4掌握字段属性的概念和一些属性的用途。
并掌握一些字段属性的设置方法。
5了解Access数据表视图的一些基本功能。
(二)实验项目2:
查询1掌握Access表达式的基本概念。
了解不同类型数据的常量、参数、运算与函数的使用。
2理解查询对象的意义和建立方法。
3掌握SQL语言中SELECT语句的主要应用。
4掌握SQL的插入、更新、删除操作命令的基本应用。
理解Access动作查询。
5了解SQL定义数据表的基本方法。
6掌握一般选择查询的操作应用;理解并掌握交叉查询的应用;理解参数查询的意义。
(三)实验项目3:
数据交换1了解什么是Access的外部数据,理解Access与外部数据交换的意义和作用。
2理解在Access数据库系统中使用外部数据的两种方法及特点:
链接、导入。
3掌握导出数据库中表或查询对象到文本文件和EXCEL的方法。
4掌握从文本文件和EXCEL表导入到表的方法。
二、实验设备(环境)及要求PC机,WindowsXP,Access2003参考教材:
数据库及其应用(Access及Excel)学习与实验实训教程。
三、实验内容要求(实验操作内容和步骤写在表格后面、回答问题写在表给内)实验项目1:
数据库设计及数据库与表的创建与操作
(一)数据库与表的设计与创建1给定如下数据分析,进行概念设计与逻辑设计。
即设计系统的E-R模型并转换为关系模型。
(数据参见附表)。
某学校设计学生教学管理系统。
学生实体包括学号、姓名、性别、生日、民族、籍贯、简历、登记照,每名学生选择一个主修专业,专业包括专业编号和名称,一个专业属于一个学院,一个学院可以有若干个专业。
学院信息要存储学院号、学院名、院长。
教学管理还要管理课程表和学生成绩。
课程表包括课程号、课程名、学分,每门课程由一个学院开设。
学生选修的每门课程获得一个成绩。
2.数据库结构设计指定数据库文件的名称,并为设计好的关系模型设计表结构。
3.数据库文件保存在“E:
教学管理”文件夹中。
数据库文件保存在D教学管理文件夹中,数据库文件名为教学管理.MDB。
表包括学院表,专业表,学生表、课程表和成绩单.学院表字段名类型宽度小数主键/索引参照表约束Null值学院号文本4主学院名文本16院长文本8专业表字段名类型宽度小数主键/索引参照表约束Null值专业号文本6主专业名文本16专业类别文本8学院号文本4学院学生表字段名类型宽度小数主键/索引参照表约束Null值学号文本8主姓名文本8性别文本2男or女生日日期型民族文本6籍贯文本20专业号文本6专业简历备注登记照OLE对象课程表字段名类型宽度小数主键/索引参照表约束Null值课程号文本8主课程名文本24学分字节学院号文本2学院成绩单字段名类型宽度小数主键/索引参照表约束Null值学号文本8主学生课程号文本8主课程成绩单精度41=0and李四,ABCD1000;在数据库窗口中双击“在设计视图中创建查询”,或者先单击“新建”按钮,然后在“新建查询”对话框中选中“设计视图”并单击“确定”按钮,进入设计视图界面。
在“视图”选项中选择SQL视图或右键快捷菜单中选择SQL视图。
在窗口中输入SELECT-5.122+17mod3;在数据库窗口中双击“在设计视图中创建查询”,或者先单击“新建”按钮,然后在“新建查询”对话框中选中“设计视图”并单击“确定”按钮,进入设计视图界面。
在“视图”选项中选择SQL视图或右键快捷菜单中选择SQL视图。
在窗口中输入SELECTHello+,World!
,LEFT(清华大学出版社,2)+RIGHT(清华大学出版社,3);在数据库窗口中双击“在设计视图中创建查询”,或者先单击“新建”按钮,然后在“新建查询”对话框中选中“设计视图”并单击“确定”按钮,进入设计视图界面。
在“视图”选项中选择SQL视图或右键快捷菜单中选择SQL视图。
在窗口中输入SELECT你毕业的年份是,VAL(LEFT(你的学号,4)+4;在数据库窗口中双击“在设计视图中创建查询”,或者先单击“新建”按钮,然后在“新建查询”对话框中选中“设计视图”并单击“确定”按钮,进入设计视图界面。
在“视图”选项中选择SQL视图或右键快捷菜单中选择SQL视图。
在窗口中输入SELECT现在是+STR(YEAR(DATE()+年,现在的时间是:
+CSTR(TIME();在数据库窗口中双击“在设计视图中创建查询”,或者先单击“新建”按钮,然后在“新建查询”对话框中选中“设计视图”并单击“确定”按钮,进入设计视图界面。
在“视图”选项中选择SQL视图或右键快捷菜单中选择SQL视图。
在窗口中输入SELECT张三李四,ABCD1000;
(二)SQL命令进行查询和操作1练习SQL查询的SELECT语句启动教学管理数据库,在数据库窗口对象栏中单击“查询”,然后进入SQL视图。
在“SQL视图”中输入以下SELECT命令,查看执行结果,并仔细体会查询的实现。
查询“学院”、“专业”、“学生”完整数据。
SELECT*FROM(学院INNERJOIN专业ON学院.学院号=专业.学院号)INNERJOIN学生ON专业.专业号=学生.专业号);查询“工商管理”专业所有女生信息。
SELECT专业,学生.*FROM专业INNERJOIN学生ON专业.专业号=学生.专业号WHERE专业.专业=工商管理AND学生.性别=女;在数据库窗口中双击“在设计视图中创建查询”,或者先单击“新建”按钮,然后在“新建查询”对话框中选中“设计视图”并单击“确定”按钮,进入设计视图界面。
在“视图”选项中选择SQL视图或右键快捷菜单中选择SQL视图。
在窗口中输入SELECT学生表.*,专业表.*FROM专业表INNERJOIN学生表ON专业表.专业号=学生表.专业号WHERE(专业表.专业名)=工商管理)AND(学生表.性别)=女);查询平均成绩在80分以上的各位学生的学号、姓名和平均分。
保存为查询对象,对象名“优秀学生”。
SELECT学生.学号,姓名,AVG(成绩)AS平均分FROM学生INNERJOIN成绩ON学生.学号=成绩.学号GROUPBY学生.学号,姓名HAVINGAVG(成绩)=80;在数据库窗口中双击“在设计视图中创建查询”,或者先单击“新建”按钮,然后在“新建查询”对话框中选中“设计视图”并单击“确定”按钮,进入设计视图界面。
在“视图”选项中选择SQL视图或右键快捷菜单中选择SQL视图。
在窗口中输入SELECT学生表.学号,学生表.姓名,Avg(成绩单.成绩)AS平均分FROM学生表INNERJOIN成绩单ON学生表.学号=成绩单.学号GROUPBY学生表.姓名HAVING(Avg(成绩单.成绩)=80);单击工具栏保存按钮,弹出“另存为”对话框,输入“优秀学生”,单击“确定”按钮。
单击工具栏保存按钮,弹出“另存为”对话框,输入“优秀学生”,单击“确定”按钮。
查询没有学生数据的专业编号和专业。
SELECT专业号,专业FROM专业WHERE专业号NOTIN(SELECT专业号FROM学生);SELECT专业表.专业号,专业名FROM专业表WHERE(专业表.专业号)NotIn(Select专业号FROM学生表);查询“湖北”籍1988年以后出生的学生信息。
SELECT*FROM学生WHERE籍贯LIKE湖北*AND生日=#1988-1-1#;在数据库窗口中双击“在设计视图中创建查询”,或者先单击“新建”按钮,然后在“新建查询”对话框中选中“设计视图”并单击“确定”按钮,进入设计视图界面。
在“视图”选项中选择SQL视图或右键快捷菜单中选择SQL视图。
在窗口中输入SELECT学生表.*FROM学生表WHERE(学生表.籍贯)Like湖北*)AND(学生表.生日)=#1/1/1988#);查询选课人数最多的课程的课程号、课程名。
SELECTTOP1课程.课程号,课程名FROM课程INNERJOIN成绩ON课程.课程号=成绩.课程号GROUPBY课程.课程号,课程名ORDERBYCOUNT(*)DESC;SELECTTOP1课程表.课程号,课程表.课程名FROM课程表INNERJOIN成绩单ON课程表.课程号=成绩单.课程号GROUPBY课程表.课程号,课程表.课程名ORDERBYCount(*)DESC;2练习SQL的插入、更新、删除操作命令在课程表中插入一门新课,数据如命令所示。
INSERTINTO课程VALUES(06020101,会计学原理,3,06);在数据库窗口中双击“在设计视图中创建查询”,或者先单击“新建”按钮,然后在“新建查询”对话框中选中“设计视图”并单击“确定”按钮,进入设计视图界面。
在“视图”选项中选择SQL视图或右键快捷菜单中选择SQL视图。
在窗口中输入INsertinto课程表Values(06020101,会计学原理,3,06);将“法学院(04)”开设课程的学分增加1分。
UPDATE课程SET学分=学分+1WHERE学院号=04UPDATE课程表SET课程表.学分=学分+1WHERE(课程表.学院号)=04);删除“信息学院(09)”开设的没有学生选修的课程。
DELETEFROM课程WHERE学院号=09AND课程号NOTIN(SELECT课程号FROM成绩)在数据库窗口中双击“在设计视图中创建查询”,或者先单击“新建”按钮,然后在“新建查询”对话框中选中“设计视图”并单击“确定”按钮,进入设计视图界面。
在“视图”选项中选择SQL视图或右键快捷菜单中选择SQL视图。
在窗口中输入DELETEFROM课程WHERE学院号=09AND课程号NOTIN(SELECT课程号FROM成绩单)3创建“教师”表,包括:
工号、姓名、性别、生日、职称、基本工资、学院号。
写出创建命令。
CREATETABLE教师(工号TEXT(6)PRIMARYKEY,姓名TEXT(10)NOTNULL,性别TEXT
(2),生日DATE,职称TEXT(8),基本工资MONEY,学院号TEXT
(2)REFERENCES学院表(学院号)(三)选择查询操作1进入查询设计视图进行交互式选择查询设置启动教学管理数据库。
1查询“专业”表,显示开设的所有专业涉及的学科门类。
点击查询,双击在设计视图中创建查询,在显示表的对话框中选择专业,单击添加关闭对话框,在字段中选择专业类别,然后窗口的上半部分空白区域单击右键选择属性,在唯一值中选择是,关闭对话框,点击“运行”的快捷键。
2查询各专业学生的人数。
将专业表和学生表加入设计视图。
在QBE界面中字段栏选中“专业号”和“专业”字段显示,然后单击工具栏中的总计按钮,在QBE界面中增加总计栏。
将“专业号”和“专业”字段设置为分组