《数据库及其应用》实验报告vvv.doc
《《数据库及其应用》实验报告vvv.doc》由会员分享,可在线阅读,更多相关《《数据库及其应用》实验报告vvv.doc(39页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数据库及其应用实验报告实验序号:B-02 实验项目名称:数据库设计及数据库创建与应用学号经济学院姓名刘翼楠专业、班国商1101实验地点现教中心指导教师 肖慎勇时间2012年5-6月一、实验目的及要求(一)实验项目1:数据库和表1熟悉Access中数据库及表的概念。了解并掌握建立数据库、表和关系的过程。2熟悉数据库窗口的界面特点,掌握数据库窗口几种设置方法。 3理解并掌握关系数据库完整性基本概念。掌握完整性的设置方法。 4掌握字段属性的概念和一些属性的用途。并掌握一些字段属性的设置方法。 5了解Access数据表视图的一些基本功能。(二)实验项目2:查询 1掌握Access表达式的基本概念。了解
2、不同类型数据的常量、参数、运算与函数的使用。2理解查询对象的意义和建立方法。3掌握SQL语言中SELECT语句的主要应用。4掌握SQL的插入、更新、删除操作命令的基本应用。理解Access动作查询。5了解SQL定义数据表的基本方法。6掌握一般选择查询的操作应用;理解并掌握交叉查询的应用;理解参数查询的意义。(三)实验项目3:数据交换1了解什么是Access的外部数据,理解Access与外部数据交换的意义和作用。2理解在Access数据库系统中使用外部数据的两种方法及特点:链接、导入。3掌握导出数据库中表或查询对象到文本文件和EXCEL的方法。4掌握从文本文件和EXCEL表导入到表的方法。二、实
3、验设备(环境)及要求PC机,Windows XP,Access 2003参考教材:数据库及其应用(Access及Excel)学习与实验实训教程。 三、实验内容要求(实验操作内容和步骤写在表格后面、回答问题写在表给内)实验项目1:数据库设计及数据库与表的创建与操作(一) 数据库与表的设计与创建1给定如下数据分析,进行概念设计与逻辑设计。即设计系统的E-R模型并转换为关系模型。(数据参见附表)。某学校设计学生教学管理系统。学生实体包括学号、姓名、性别、生日、民族、籍贯、简历、登记照,每名学生选择一个主修专业,专业包括专业编号和名称,一个专业属于一个学院,一个学院可以有若干个专业。学院信息要存储学院
4、号、学院名、院长。教学管理还要管理课程表和学生成绩。课程表包括课程号、课程名、学分,每门课程由一个学院开设。学生选修的每门课程获得一个成绩。2. 数据库结构设计指定数据库文件的名称,并为设计好的关系模型设计表结构。数据库文件保存在“E:教学管理”文件夹中。3定义数据库文件定义存放路径,和数据库文件。写出操作步骤。可包括必要的截图。4定义数据库中各表根据事先设计好的结构,分别定义各表、字段名、字段属性。重复的步骤可简化。5定义表之间的关系当所有表都定义好后,定义各表之间的关系。6输入表记录当所有表建立好后,可开始输入记录。简要说明输入的操作。(二)Access数据库窗口基本操作1设置教学管理数据
5、库窗口中表对象列表窗口的显示格式为“详细信息”写出操作步骤。2隐藏和重新显示教学管理数据库窗口 写出操作步骤。3定义一个“学生与成绩”组,将“学生”、“成绩”表放置到该组中写出创建组的操作和放置对象的操作。(三)创建表时的完整性设置1定义主键,实现实体完整性的操作每个表都可以定义主键。在Access中为教学管理数据库的各表定义主键。当一个表没有合适的字段作为主键时,一般会增加一个“id”字段。试在“成绩”表中增加一个“成绩id”字段,并定义为“自动编号”型,然后定义其为主键。2进行设置参照完整性的操作在定义的有关系的表上,为关系设置参照完整性。3通过不同方式实现用户定义的完整性的操作用户定义的
6、完整性,是指由用户规定的对于表中数据取值的约束。在Access表定义时,除定义主键和关系外,通过多种方式设置用户定义完整性。对教学管理数据库中必要的用户定义完整性进行设置和定义。(四)字段属性定义与应用1字段显示格式设置 使“学生”表中的“民族”字段以黄色显示。 使“学生”的生日以中文方式、红色显示。 使“成绩”表中成绩的显示为3位整数和一位小数,蓝色。2字段输入掩码设置在定义“学生”表时,由于“学号”是8位文本,且每位都由09组成,因此,要在定义“学号”字段时规定每一位的输入都必须是数字。其他如课程表的“课程号”字段、专业表的“专业号”字段等都可以定义类似的输入掩码。3定义字段查阅方法“查阅
7、”控件与字段绑定,可以提示字段的输入。为“专业”表的“专业类别”定义查阅控件绑定。为“专业”表的“学院号”字段设计“查阅”控件。数据从“学院”表中来,显示“学院号”和“学院名”两列数据,采用列表框。(五)数据表视图下数据记录的显示与操作1输入操作利用数据表视图进行输入操作,输入的数据应该满足完整性的要求。而如果是有关系的表中的子表,外键输入时还要与主键值对应。根据给定的数据,为数据库中各表(重点介绍一到两个表)输入记录。2. 修改和删除操作修改“课程”表,将“运筹学”所在记录的学分增加1分,将开设学院变为“工商管理学院(05)”。删除“课程”表中“美术设计”课程。3. 数据表视图中的设置数据表
8、视图是浏览表中数据的界面,可以做不同的设置,以获得不同的效果。 数据表视图中父子表的展开。 按照指定的字段排序浏览。在“成绩”数据表视图中,按照成绩的大小排列。 在学生表中只显示女生数据记录。实验项目二:查询(一) SQL视图中表达式练习1进入SQL视图及在不同视图间切换在Access中进入查询的设计视图并在查询的不同视图之间切换。2不同类型数据的表达式运算在SQL视图中分别输入以下命令并运行,对于参数自己输入数据。查看并写出各表达式运算结果。SELECT -5.122+(17 mod 3);SELECT Hello +,World!,LEFT(清华大学出版社,2)+RIGHT(清华大学出版社
9、,3);SELECT 你毕业的年份是, VAL(LEFT(你的学号,4)+4;SELECT 现在是+STR(YEAR(DATE()+年,现在的时间是:+CSTR(TIME();SELECT 张三李四,ABCD1000;(二)SQL命令进行查询和操作1练习SQL查询的SELECT语句启动教学管理数据库,在数据库窗口对象栏中单击“查询”,然后进入SQL视图。在“SQL视图”中输入以下SELECT命令,查看执行结果,并仔细体会查询的实现。 查询“学院”、“专业”、“学生”完整数据。SELECT * FROM (学院 INNER JOIN 专业 ON 学院.学院号=专业.学院号) INNER JOIN
10、 学生 ON 专业.专业号=学生.专业号); 查询“工商管理”专业所有女生信息。SELECT 专业,学生.* FROM 专业 INNER JOIN 学生 ON 专业.专业号=学生.专业号WHERE 专业.专业=工商管理 AND 学生.性别=女; 查询平均成绩在80分以上的各位学生的学号、姓名和平均分。保存为查询对象,对象名“优秀学生”。SELECT 学生.学号,姓名,AVG(成绩) AS 平均分 FROM 学生 INNER JOIN 成绩 ON 学生.学号=成绩.学号 GROUP BY 学生.学号,姓名 HAVING AVG(成绩)=80 ;单击工具栏保存按钮,弹出“另存为”对话框,输入“优秀
11、学生”,单击“确定”按钮。 查询没有学生数据的专业编号和专业。SELECT 专业号,专业 FROM 专业 WHERE 专业号 NOT IN (SELECT 专业号 FROM 学生) ; 查询“湖北”籍1988年以后出生的学生信息。SELECT * FROM 学生 WHERE 籍贯 LIKE 湖北* AND 生日 =#1988-1-1# ; 查询选课人数最多的课程的课程号、课程名。SELECT TOP 1 课程.课程号,课程名 FROM 课程 INNER JOIN 成绩 ON 课程.课程号=成绩.课程号 GROUP BY 课程.课程号,课程名ORDER BY COUNT(*) DESC ;2练习
12、SQL的插入、更新、删除操作命令 在课程表中插入一门新课,数据如命令所示。INSERT INTO 课程VALUES(,会计学原理,3,06); 将“法学院(04)”开设课程的学分增加1分。UPDATE 课程 SET 学分=学分+1 WHERE 学院号=04 删除“信息学院(09)”开设的没有学生选修的课程。DELETE FROM 课程 WHERE 学院号=09 AND 课程号 NOT IN (SELECT 课程号 FROM 成绩)3创建“教师”表,包括:工号、姓名、性别、生日、职称、基本工资、学院号。写出创建命令。(三)选择查询操作1进入查询设计视图进行交互式选择查询设置启动教学管理数据库。
13、查询“专业”表,显示开设的所有专业涉及的学科门类。 查询各专业学生的人数。 查询没有选课的男学生学号、姓名,即成绩表中没有记录的学生数据。2进行交叉表查询将学生的“学号”和“姓名”作为行标题,“课程名”作为列标题,成绩作为交叉数据,生成交叉表。3进行参数查询通过参数查询指定日期以后出生的某个民族的学生信息。(四)动作查询操作1生成表查询操作练习将“查询平均成绩在80分以上的各位学生的学号、姓名和平均分”的结果生成新表,表名“优秀学生名单”。2删除查询操作删除“优秀学生名单”表中,平均分在85分以下的记录。3追加查询操作将平均分在8085分之间的学生及成绩数据加入“优秀学生名单”表, 4更新查询
14、操作将没有学生选修的课程的学分减少1分。写出以上要求的操作步骤并截取必要的图片。实验项目三:数据交换(一) 导出操作1在“教学管理”数据库中创建一个查询并保存。查询的名称为“学生成绩单”。查询的结构为:学号、姓名、专业、课程号、课程名、成绩。2将“学生成绩单”查询导出为文本文件,字段值之间用逗号作为分隔符,文本型数据不要加引号。文本文件要包括字段名。3将“学生成绩单”查询导出到桌面EXCEL文件“学生成绩表”中。写出以上操作的主要过程。(二)导入操作1将上面实验产生的文本文件导入教学管理数据库中作为表对象。命名为“学生成绩单”。并为各字段列指定合适的类型。 2上面实验产生的EXCEL文件“学生
15、成绩表”导入教学管理数据库中作为表对象。命名为“学生成绩表”。并为各字段列指定合适的类型。产生表后,指定学号、课程号为主键。写出以上操作的主要过程。四、回答问题(一)实验项目11Access存储数据时,用到几个数据库文件?扩展名是什么?答:一个,扩展名.mdb2设计ER模型、关系模型、数据库及表结构,分别属于数据库设计中的什么步骤? 答:分别属于ER模型-概念设计、关系模型-逻辑设计、数据库及表结构-物理设计3在表结构设计中,应该包含哪些内容?答:包括定义字段,主键,索引,约束,是否取空值,查阅向导等。4在本实验设计中,共使用了哪些数据类型? 答:文本,数字,日期/时间,是否,OLE对象5定义
16、表之间的关系时,“实施参照完整性”的意义是什么?在“编辑关系”对话框中选中或者撤销“级联更新相关字段”复选框,对于数据表的操作有何影响?答:实施参照完整性,则在子表中更新数据时,ACCESS将检验新加入的外键值取值是否 与对应的主键满足参照完整性。若选中复选框,则父表修改主键值时,子表中对应的外键自动更新。若不选择,则若子表中有对应外键值时,ACCESS拒绝修改主键。6建立表的关系,是否要求发生关系的两个字段必须同名?答:否。7在定义学生表的“性别”字段时,同时定义了字段的“有效性规则”,对输入学生表的记录有什么影响?答:在输入时,若不满足“有效性规则”的约束,则无法输入。8如何输入学生照片?
17、答:在设计视图中将照片字段的数据类型设置为OLE对象,切换至数据表视图,在输入数据时,菜单栏-插入-对象-选择由文件创建,点击“浏览”找到学生照片,点击确定。9 如何理解“收藏夹”,试说明“收藏夹”与组之间的异同。答:收藏夹可以看做一个组,但是收藏夹不能重命名,也不可以被删除。收藏夹和创建的组都可以用来存放常用的表。10打开数据库文件时,有哪几种可选择的方式?一般默认方式是什么?如果要将默认方式设置为“独占”如何实现?答:选项有“打开”,“以只读方式打开”,“以独占方式打开”,“以独占只读方式打开“。默认的方式是“打开”,若要用独占方式打开,则选择菜单栏-文件-打开,选中文件,点击“打开”对话
18、框的打开按钮右侧的箭头,选择以独占方式打开。11. 在“学生”表的设计器中,选择“学号”字段,然后单击工具栏“主键”按钮,以便取消主键,这时会出现什么情况?为什么?答:会弹出对话框提示不能取消主键,因为该字段是一个或多个关系中的主表,取消主键前要删除关系。12. 在“编辑关系”对话框中,只有选中“实施参照完整性”,才可以选择“级联更新关联字段”和“级联删除关联字段”。试解释这三种复选项的控制意义。答:实施参照完整性,则在子表中更新数据时,ACCESS将检验新加入的外键值取值是否与对应的主键满足参照完整性。后两项复选项必须基于实施参照完整性,只是侧重不同操作。13当在输入记录时,如果发生主键字段
19、重复,会出现什么现象?如果输入的外键值如专业表的“学院号”在“学院”中没有对应的值,会出现什么情况?答:输入不成功,弹出提示称由于在主键值重复,对表的修改没有成功。输入不成功,弹出提示称由于学院表需要一个相关的值,不能修改。14. 定义表时,设置“有效性文本”字段属性有何作用?答:在输入的数据不符合有效性规则约束时,弹出提示即为“有效性文本”,能够让输入人员知道数据输入的要求,相应输入符合规则的数据。15. 在定义“文本”型字段格式时,“”符号与“&”符号作为占位符有何区别?在定义“数字”型字段格式时,“#”符号与“0”符号作为占位符有何区别?答:文本型中,和&都用做字符占位符,若没有字符显示
20、,显示为空格,而ACCESS忽略&。数字型中,若没有数字输入,0显示为0,#被忽略。16. 在本实验的定义“日期/时间”型字段格式时,一个m或d与两位的mm或dd在使用时有何区别?用“”符号的作用是什么?若设计格式为:dddddd红色,有何区别?答:m和d显示为一位或两位数字,mm和dd固定显示两位;让跟随的第一个字符照印显示出来;dddddd红色表示显示长日期,并为红色。17. 定义“输入掩码”属性的实质意义是什么?在定义“学号”字段的输入掩码时,不使用“0”而使用“9”或“#”有和区别?如果在“姓名”字段上必须定义10位输入掩码,那么应该定义什么掩码字符串?答:意义在于规定数据输入时的格式
21、。0表示可输入数字0-9到该位置,不允许留空;9表示输入数字0-9和空格,若没有输入数字或空格,则忽略;#作为占位符数字,空格和正负号都可以输入,若不输入,则默认为空格。18. 可以采用查阅方法输入的字段类型有哪些?绑定查阅列表框控件进行输入,如果不点击其中的值,而是输入不同的值,是否可以输入?如果一定要使输入的值限定在列表框的值的范围内,应该如何实现?答:类型有文本,数字,是/否。可以输入不同的值。19. 若在“课程”表删除“数据库及应用”记录,会发生什么现象?什么含义?答:弹出提示“索引或主关键字不能为空值”,由于在“课程”表中,课程号被设置为主键,根据实体完整性原则,主键不可为null。
22、20. 在数据表浏览展开子表时,可以最多展开多少层子表?若要同时展开每条记录的的子表,应该如何操作?答:最多展开8层。全部展开方式:菜单栏-格式-子数据表-全部展开。(二)实验项目21有哪几种方式可进入“SQL视图”?如果用“记事本”编写了SQL语句,是否可以在SQL视图中使用?如何操作?答:1.先进入设计视图,在“视图”里选择SQL视图。2.进入设计视图,右键快捷菜单中选择SQL视图。3.设计视图中可进入。在记事本里编写的SQL语句可以再SQL视图中选择“文件”选项卡中的“获取外部数据”中的“导入”,再选择所要的记事本,或复制粘贴也可。2为什么不能在数字常量前加“¥”或“$”符号表示币值常量
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库及其应用 数据库 及其 应用 实验 报告 vvv
限制150内