《数据库及其应用》实验报告1.docx
- 文档编号:7980961
- 上传时间:2023-01-27
- 格式:DOCX
- 页数:26
- 大小:1.17MB
《数据库及其应用》实验报告1.docx
《《数据库及其应用》实验报告1.docx》由会员分享,可在线阅读,更多相关《《数据库及其应用》实验报告1.docx(26页珍藏版)》请在冰豆网上搜索。
《数据库及其应用》实验报告1
《数据库及其应用》实验报告
实验序号:
B-02实验项目名称:
数据库设计和创建、表的创建与相关设置
学 号
姓 名
林子涵
专业、班
投资1002班
实验地点
现教中心
指导教师
刘克剡
时间
2011年3-4月
一、实验目的及要求
1.熟悉Access中数据库及表的概念。
了解并掌握建立数据库、表和关系的过程。
2.熟悉数据库窗口的界面特点,掌握数据库窗口几种设置方法。
3.理解并掌握关系数据库完整性基本概念。
掌握完整性的设置方法。
4.掌握字段属性的概念和一些属性的用途。
并掌握一些字段属性的设置方法。
5.了解Access数据表视图的一些基本功能。
6.了解在数据表视图中进行操作时的不同特点。
二、实验设备(环境)及要求
PC机,WindowsXP,Access2003
三、实验内容要求
(实验操作内容和步骤可写在表格后面)
(一)数据库与表的设计与创建
1.给定如下数据分析,进行概念设计与逻辑设计。
即设计系统的E-R模型并转换为关系模型。
(数据参见附表)。
某学校设计学生教学管理系统。
学生实体包括学号、姓名、性别、生日、民族、籍贯、简历、登记照,每名学生选择一个主修专业,专业包括专业编号和名称,一个专业属于一个学院,一个学院可以有若干个专业。
学院信息要存储学院号、学院名、院长。
教学管理还要管理课程表和学生成绩。
课程表包括课程号、课程名、学分,每门课程由一个学院开设。
学生选修的每门课程获得一个成绩。
2.数据库结构设计
指定数据库文件的名称,并为设计好的关系模型设计表结构。
数据库文件保存在“E:
\教学管理\”文件夹中。
3.定义数据库文件
定义存放路径,和数据库文件。
写出操作步骤。
可包括必要的截图。
4.定义数据库中各表
根据事先设计好的结构,分别定义各表、字段名、字段属性。
重复的步骤可简化。
5.定义表之间的关系
当所有表都定义好后,定义各表之间的关系。
6.输入表记录
当所有表建立好后,可开始输入记录。
简要说明输入的操作。
(二)Access数据库窗口基本操作
1.设置教学管理数据库窗口中表对象列表窗口的显示格式为“详细信息”
写出操作步骤。
2.隐藏和重新显示教学管理数据库窗口
写出操作步骤。
3.定义一个“学生与成绩”组,将“学生”、“成绩”表放置到该组中
写出创建组的操作和放置对象的操作。
(三)创建表时的完整性设置
1.定义主键,实现实体完整性的操作
每个表都可以定义主键。
在Access中为教学管理数据库的各表定义主键。
当一个表没有合适的字段作为主键时,一般会增加一个“id”字段。
试在“成绩”表中增加一个“成绩id”字段,并定义为“自动编号”型,然后定义其为主键。
2.进行设置参照完整性的操作
在定义的有关系的表上,为关系设置参照完整性。
3.通过不同方式实现用户定义的完整性的操作
用户定义的完整性,是指由用户规定的对于表中数据取值的约束。
在Access表定义时,除定义主键和关系外,通过多种方式设置用户定义完整性。
对教学管理数据库中必要的用户定义完整性进行设置和定义。
(四)字段属性定义与应用
1.字段显示格式设置
①使“学生”表中的“民族”字段以黄色显示。
②使“学生”的生日以中文方式、红色显示。
③使“成绩”表中成绩的显示为3位整数和一位小数,蓝色。
2.字段输入掩码设置
在定义“学生”表时,由于“学号”是8位文本,且每位都由0~9组成,因此,要在定义“学号”字段时规定每一位的输入都必须是数字。
其他如课程表的“课程号”字段、专业表的“专业号”字段等都可以定义类似的输入掩码。
3.定义字段查阅方法
“查阅”控件与字段绑定,可以提示字段的输入。
为“专业”表的“专业类别”定义查阅控件绑定。
为“专业”表的“学院号”字段设计“查阅”控件。
数据从“学院”表中来,显示“学院号”和“学院名”两列数据,采用列表框。
(五)数据表视图下数据记录的显示与操作
1.输入操作
利用数据表视图进行输入操作,输入的数据应该满足完整性的要求。
而如果是有关系的表中的子表,外键输入时还要与主键值对应。
根据给定的数据,为数据库中各表(重点介绍一到两个表)输入记录。
2.修改和删除操作
修改“课程”表,将“运筹学”所在记录的学分增加1分,将开设学院变为“工商管理学院(05)”。
删除“课程”表中“美术设计”课程。
3.数据表视图中的设置
数据表视图是浏览表中数据的界面,可以做不同的设置,以获得不同的效果。
①数据表视图中父子表的展开。
②按照指定的字段排序浏览。
在“成绩”数据表视图中,按照成绩的大小排列。
③在学生表中只显示女生数据记录。
四、回答问题
1.Access存储数据时,用到几个数据库文件?
扩展名是什么?
答:
用到了7种(表,查询,窗体,报表,页,宏,模块),扩展名是mdb。
2.设计ER模型、关系模型、数据库及表结构,分别属于数据库设计中的什么步骤?
答:
分别属于概念模型,逻辑设计,物理设计。
3.在表结构设计中,应该包含哪些内容?
答:
应该包含字段名称,数据类型,说明。
4.在本实验设计中,共使用了哪些数据类型?
答:
使用了文本,数字,日期,OLE对象。
5.定义表之间的关系时,“实施参照完整性”的意义是什么?
在“编辑关系”对话框中选中或者撤销“级联更新相关字段”复选框,对于数据表的操作有何影响?
答:
“实施参照完整性”是指在定义表间关系时要满足参照完整性规则,即关系S的主键作为外键出现在关系R中,它在R中的取值只能符合两种情形之一:
或者为空值;或者在关系S的主键中存在对应的值;也就是说在子表添加或更新数据时,Access将检验子表新加入的与主键有关的外键值是否满足参照完整性,若外键值没有与之对应的主键值,Access将拒绝添加或更新数据。
在实施参照完整性的条件下若选中“级联更新相关字段”则当父表修改主键值时如果子表中的外键有对应的值,外键的对应值将自动级联更新。
若撤销该复选框,那么当父表修改主键值而子表中有对应的值时Access将拒绝修改主键值。
6.建立表的关系,是否要求发生关系的两个字段必须同名?
答:
不是必须同名。
7.在定义学生表的“性别”字段时,同时定义了字段的“有效性规则”,对输入学生表的记录有什么影响?
答:
对“性别”字段的取值约束为“男”或“女”,输入为:
”男”or”女”当不满足约束条件时系统将拒绝输入记录 。
8.如何输入学生照片?
答:
在照片数据类型中选定OLE对象型,可以先将对象放入“剪贴板”中,然后“粘贴”到表中;还可以选择“插入”→“对象”命令。
9.如何理解“收藏夹”,试说明“收藏夹”与组之间的异同。
答:
在数据库对象标签栏中“收藏夹”是系统自动定义的一个项目,它与组的功能相同,即将应用相关的对象组合一起是管理和应用起来更加方便;但不可从中删除对象,因而最常用的一些对象就可以放在“收藏夹”中。
而可以从组中删除某个对象,且只是删除其快捷方式而不会删除该对象本身。
10.打开数据库文件时,有哪几种可选择的方式?
一般默认方式是什么?
如果要将默认方式设置为“独占”如何实现?
答:
两种—共享或独占式共享。
一般默认方式是共享。
默认方式中选择“独占”一般默认方。
11.在“学生”表的设计器中,选择“学号”字段,然后单击工具栏“主键”按钮,以便取消主键,这时会出现什么情况?
为什么?
答:
会出现一个对话框提示不允许取消主键。
其原因是在建立表间关系时主要通过主键、外键联系起来,只修改原表中的主键而不管关系就会使关系和表二者发矛盾,故若要取消或修改主键首先必须改变关系。
12.在“编辑关系”对话框中,只有选中“实施参照完整性”,才可以选择“级联更新关联字段”和“级联删除关联字段”。
试解释这三种复选项的控制意义。
答:
“实施参照完整性”是指在子表添加或更新数据时,Access将检验子表新加入的与主键有关的外键值是否满足参照完整性,若外键值的主键值,Access将拒绝添加或更新数据。
在子表添加或更新数据时,Access将检验子表新加入的与主键有关的外键值是否满足参照完整性,若外键值没有与之对应的主键值,Access将拒绝添加或
更新数据。
在实施参照完整性的条件下若选中“级联更新关联字段”则当父表修改主键值时如果子表中的外键有对应的值,外键的对应值将自动级联更新。
在实施参照完整性的条件下若选中“级联删除关联字段”则当父表删除主键值时如果子表中的外键有对应的记录,对应记录就会自动级联删除。
13.当在输入记录时,如果发生主键字段重复,会出现什么现象?
如果输入的外键值如专业表的“学院号”在“学院”中没有对应的值,会出现什么情况?
答:
均会出现“无法输入”。
14.定义表时,设置“有效性文本”字段属性有何作用?
答:
有效性文本”指当字段输入或更改的数据没有通过系统检验时用户指定显示的文本信息,它只能与“有效性规则”属性配套使用 。
15.在定义“文本”型字段格式时,“@”符号与“&”符号作为占位符有何区别?
在定义“数字”型字段格式时,“#”符号与“0”符号作为占位符有何区别?
答:
①两者都是字符占位符,但前者用于在该位置显示任意可用字符或空格,后者用于在该位置显示任意可用字符,且若没有可用字符要显示,Access将忽略该占位符。
②两者都是数字占位符,前者是若在这个位置没有数字输入,则Access显示0;后者是若在这个位置没有数字输入,则Access忽略该数字占位符。
16.在本实验的定义“日期/时间”型字段格式时,一个m或d与两位的mm或dd在使用时有何区别?
用“\”符号的作用是什么?
若设计格式为:
dddddd[红色],有何区别?
答:
d用于把某天显示成一位或两位数字,dd则用于把某天显示成固定的两位数字;m用于把某月显示成一位或两位数字,mm则用于把某月显示成固定的两位数字。
该符号用于将其后跟随的第一个字符原文照印;用于显示“长日期”格式,且使显示的字段字色为红色。
17.定义“输入掩码”属性的实质意义是什么?
在定义“学号”字段的输入掩码时,不使用“0”而使用“9”或“#”有和区别?
如果在“姓名”字段上必须定义10位输入掩码,那么应该定义什么掩码字符串?
答:
①“输入掩码”属性有两个作用:
定义数据的输入格式和制定输入数据的某一位上允许输入的数据类型和输入值的集合。
②使用“0”则规定必须输入数字到该位置,不允许输入“+”和“—”符号;使用“9”则数字或空格都可输入到该位置,不允许输入“+”和“—”符号,且若在该位置未输入任何数字或空格,Access将忽略该占位符;使用“#”则数字、空格、“+”
和“—”符号都可输入到该位置,且若在该位置未输入任何数字,则Access认为输入的是空格。
18.可以采用查阅方法输入的字段类型有哪些?
绑定查阅列表框控件进行输入,如果不点击其中的值,而是输入不同的值,是否可以输入?
如果一定要使输入的值限定在列表框的值的范围内,应该如何实现?
答:
①“文本”“是/否”“数字”型字段;②不可以,绑定列表框后用户只能在列出的表中选择 。
19.若在“课程”表删除“数据库及应用”记录,会发生什么现象?
什么含义?
答:
如图所示如果加以删除,就会出现如上对话框。
它的意思是表“成绩单”与“课程”表之间通过外键建立了关系,除非删除相关关系,否则无法修改记录。
20.在数据表浏览展开子表时,可以最多展开多少层子表?
若要同时展开每条记录的的子表,应该如何操作?
答:
在数据表浏览展开子表时,可以最多展开7层子表。
选择格式菜单下的“子数据表菜单项”中的“全部展开”或者要同时展开每条记录的子表,应该一次单击字段前的。
(+)号。
五、分析讨论
1.学期的数据库实验相对上学期得计算机基础实验,难度有所增加。
很多问题以及实验步骤,教材上并没有直接给出答案和操作方法,需要我们自己在理解课本的基础上进行思考来获得正确的答案,再加上平时对Access的接触也少,在建立数据库和表的过程中有时因为违规操作而被系统阻止,所以操作起来较困难。
2.但是,通过此实验,在数据库和表的创建方面也积累了一些经验如当主键须有多个字段构成时,在设计视图中,将需要的字段都选中后再单击工具栏中的‘主键’按钮”等。
3.还应多加以练习,才会对Access有更得心应手的操作。
(根据实验写出一些心得或分析等)
六、教师评语
1.按时完成实验;
2.实验内容和过程记录完整;
3.回答问题完整、正确;
4.有实验的心得或讨论;
5.实验报告的撰写认真、格式符合要求,没有抄袭行为。
签名:
日期:
2009.3
成绩
本实验的操作步骤如下。
(一)数据库与表的设计与创建
1.给定如下数据分析,进行概念设计与逻辑设计。
即设计系统的E-R模型并转换为关系模型。
(数据参见附表)。
某学校设计学生教学管理系统。
学生实体包括学号、姓名、性别、生日、民族、籍贯、简历、登记照,每名学生选择一个主修专业,专业包括专业编号和名称,一个专业属于一个学院,一个学院可以有若干个专业。
学院信息要存储学院号、学院名、院长。
教学管理还要管理课程表和学生成绩。
课程表包括课程号、课程名、学分,每门课程由一个学院开设。
学生选修的每门课程获得一个成绩。
(一)E-R模型:
步骤
(1)确定实体类别及各自的属性组成,指出实体标识符。
学生实体的属性:
学号、姓名、性别、生日、民族、籍贯、简历、登记照
标识符:
学号
专业实体的属性:
专业号、专业名称、专业类别
标识符:
专业号
学院实体的属性:
学院号、学院名、院长
标识符:
学院号
课程实体的属性:
课程号、课程名、学分
标识符:
课程号
步骤
(2)分析实体间的联系
(二)关系模型
步骤
(1)实体转化为关系模式
学生(学号、姓名、性别、生日、民族、籍贯、简历、登记照)
专业(专业号、专业名称、专业类别)
学院(学院号、学院名、院长)
课程(课程号、课程名、学分)
步骤
(2)联系转化为关系模式
招收(学院号、学号)
开设课程(学院号、课程号)
包含专业(学院号、专业号)
选择专业(学号、专业号)
选修课程(学号、课程号、成绩)
步骤(3)优化合并
学生(学号、姓名、性别、生日、民族、籍贯、专业号、简历、登记照)
专业(专业号、专业名称、专业类别、学院号)
学院(学院号、学院名、院长)
课程(课程号、课程名、学分、学院号)
成绩单(学号、课程号、成绩)
2.数据库结构设计
指定数据库文件的名称,并为设计好的关系模型设计表结构。
数据库文件保存在“F:
\教学管理\”文件夹中。
数据库文件名:
“学生教学管理”,数据库中各表名:
学生、专业、学院、课程、成绩单。
表一学生结构
表二专业结构
表三学院结构
表四课程结构
表五成绩单结构
3.定义数据库文件
定义存放路径,和数据库文件。
写出操作步骤。
可包括必要的截图。
步骤一:
定义存放路径(建立文件夹)
在E盘新建文件夹,命名为教学管理
步骤二:
定义数据库文件
启动Access,选择“文件”菜单的“新建”项,启动“新建文件”任务窗格。
单击“空数据库”,出现“文件新建数据库”对话框,在“保存位置”找到“E:
\教学管理”,输入文件名“学生教学管理”,单击“创建”按钮。
4.定义数据库中各表
根据事先设计好的结构,分别定义各表、字段名、字段属性。
重复的步骤可简化。
步骤一:
在数据库窗口中双击“使用设计器创建表”进入“表设计试图”。
步骤二:
根据物理设计的结果定义表:
(1)在“字段名称”下输入“学号”,数据类型选择“文本类型”。
在“常规”中,将“字段大小”改为8,“必填字段”属性改为“是”。
(2)以同样的方法定义“姓名”、“性别”、“生日”、“民族”、“籍贯”、“简历”、“登记照”、“专业号”。
其中:
“性别”字段,在“有效性规则”中输入“="男"OR="女"”。
(3)单击“学号”左边的选定块,选定“学号”字段,单击表设计工具栏中的“主键”按钮,将“学号”设为主键。
(4)单击工具栏中的“保存”按钮,弹出“另存为”对话框,在对话框中输入表名“学生”,单击确定并关闭窗口。
步骤三:
重复步骤一、二,完成其余表的定义。
5.定义表之间的关系
当所有表都定义好后,定义各表之间的关系。
步骤一:
在学生教学管理数据库窗口中,单击数据库工具栏中的“关系”按钮,打开关系窗口。
在“显示表”对话框中,按shift键选中所有的表,单击“添加”按钮,将所有表格添加到关系窗口中。
步骤二:
将“学院”表中的“学院号”拖向“学生”表中的“学院号”,弹出“编辑关系”对话框单击“创建”,完成关系的创建。
步骤三:
重复步骤二完成其他关系的创建。
步骤四:
单击保存、完成创建。
6.输入表记录
当所有表建立好后,可开始输入记录。
简要说明输入的操作。
第一步:
双击学院表,进入表记录输入窗口。
第二步:
根据所给数据输入记录。
(当输入一条条记录时,下方会多出空白的新纪录)
第三步:
输入完成后单击关闭,完成学院表的输入。
第四步:
重复一到三步,完成专业表、课程表、学生表、成绩单的输入
(二)Access数据库窗口基本操作
1.设置教学管理数据库窗口中表对象列表窗口的显示格式为“详细信息”
写出操作步骤。
在“学生教学管理”数据库窗口中选择表对象,点击“详细信息”按钮
2.隐藏和重新显示教学管理数据库窗口
写出操作步骤。
隐藏:
单击“窗口”菜单中的“隐藏”项;
重新显示:
单击“窗口”菜单中的“取消隐藏”项/按F11
3.定义一个“学生与成绩”组,将“学生”、“成绩”表放置到该组中
写出创建组的操作和放置对象的操作。
创建组:
在“对象标签栏”单击右键,选择“新组”选项。
在弹出的“新组”对话框中输入组名“学生与成绩”,单击确定。
放置对象:
在数据库窗口中选择表对象,(方法1)直接将“学生”表拖向“学生与成绩对象”;(方法2)右击“成绩”表,选择“添加到组”中的“学生与成绩”。
(三)创建表时的完整性设置
1.定义主键,实现实体完整性的操作
每个表都可以定义主键。
在Access中为教学管理数据库的各表定义主键。
在表的设计视图中,选择需要定义为主键的字段,单击工具栏中的主键按钮即可(各表主键在之前题目中已设)
当一个表没有合适的字段作为主键时,一般会增加一个“id”字段。
试在“成绩”表中增加一个“成绩id”字段,并定义为“自动编号”型,然后定义其为主键。
2.进行设置参照完整性的操作
在定义的有关系的表上,为关系设置参照完整性。
在工具栏中单击“关系”按钮,双击学院与专业间的关系,在“编辑关系”对话框中勾选“实施参照完整性”、“级联更新相关字段”和“级联删除相关记录”,单击确定。
其余关系同上。
3.通过不同方式实现用户定义的完整性的操作
用户定义的完整性,是指由用户规定的对于表中数据取值的约束。
在Access表定义时,除定义主键和关系外,通过多种方式设置用户定义完整性。
对教学管理数据库中必要的用户定义完整性进行设置和定义。
(1)学生表中的“性别”字段,在属性中的有效性规则中输入“="男"Or="女"”。
(2)课程表中的“学分”字段,在属性中的有效性规则中输入“>0”。
(3)成绩单表中的“成绩”字段,在属性中的有效性规则中输入“>0And[成绩]<100”。
四)字段属性定义与应用
1.字段显示格式设置
步骤:
①使“学生”表中的“民族”字段以黄色显示。
在“学生”表中的“民族”字段的属性中的“格式”中输入“&&[黄色]”。
②使“学生”的生日以中文方式、红色显示。
在“生日”字段属性中的格式中输入“dddddd[红色]”。
③使“成绩”表中成绩的显示为3位整数和一位小数,蓝色。
在“成绩”表中“成绩”字段属性中的格式中输入“###.0[蓝色]”。
2.字段输入掩码设置
在定义“学生”表时,由于“学号”是8位文本,且每位都由0~9组成,因此,要在定义“学号”字段时规定每一位的输入都必须是数字。
其他如课程表的“课程号”字段、专业表的“专业号”字段等都可以定义类似的输入掩码。
(1)在“学生”表中“学号”字段属性中的“输入掩码”中输入“”;“专业号”字段属性中的“输入掩码”中输入“0000”。
2)在“成绩单”表中“学号”字段属性中的“输入掩码”中输入“”,“课程号”字段属性中的“输入掩码”中输入“”。
(3)在“课程”表中的“课程号”字段属性中的“输入掩码”中输入“”,“学院号”字段属性中的“输入掩码”中输入“00”。
(4)在“学院”表中的“学院号”字段属性中的“输入掩码”中输入“00”。
(5)在“专业”表中的“专业号”字段属性中的“输入掩码”中输入“0000”,“学院号”字段属性中的“输入掩码”中输入“00”。
3.定义字段查阅方法
“查阅”控件与字段绑定,可以提示字段的输入。
为“专业”表的“专业类别”定义查阅控件绑定。
(1)在“专业”表的“专业类别”字段单击“查阅”,在“显示控件”中选择“列表框”。
(2)在“行来源类型”选择“值列表”。
(3)在“行来源”中输入“"人文";"经济学";"法学";"管理学";"工科"”。
为“专业”表的“学院号”字段设计“查阅”控件。
数据从“学院”表中来,显示“学院号”和“学院名”两列数据,采用列表框。
(1)在“专业”表的“学院号”字段中单击“查阅”,在“显示控件”中选择“列表框”。
(2)在“行来源类型”选择“值列表”。
(3)在“行来源”中选择“学院”。
(4)将“绑定列”设为1,“列数”设为2。
(5)将“列宽”设为0.5cm
五)数据表视图下数据记录的显示与操作
1.输入操作
利用数据表视图进行输入操作,输入的数据应该满足完整性的要求。
而如果是有关系的表中的子表,外键输入时还要与主键值对应。
根据给定的数据,为数据库中各表(重点介绍一到两个表)输入记录。
以学生表为例介绍输入记录的过程:
在数据库视图中双击“学生”表,根据数据输入“学号”(只能输入0~9数字,输其他字符会有出错提示音,不能输)及“姓名”、“性别”。
输“生日”时,可输入“1987-11-9”这样的格式,系统会自动转换为长日期格式。
继续输入“民族”“籍贯”字段。
输“专业号”时,如果输入的号码无法在“专业”表中的找到,不符合完整性要求,无法输入。
2.修改和删除操作
修改“课程”表,将“运筹学”所在记录的学分增加1分,将开设学院变为“工商管理学院(05)”。
在数据库视图中双击“课程”表,将“运筹学”所在记录的学分增加1分,将开设学院变为“工商管理学院(05)”。
删除“课程”表中“美术设计”课程。
选中“美术设计”的记录选择器,右击,选择“删除记录”菜单项,弹出确认删除的对话框,选择是。
3.数据表视图中的设置
数据表视图是浏览表中数据的界面,可以做不同的设置,以获得不同的效果。
步骤:
①数据表视图中父子表的展开。
在“课程”表中,单击记录前的“+”号,即可展开子表。
②按照指定的字段排序浏览。
在“成绩”数据表视图中,按照成绩的大小排列。
在“成绩单”表中,单击“成绩”字段,选择工具栏中的“降序排列”。
③在学生表中只显示女生数据记录。
(1)在学生表选择“记录”菜单“筛选”中的“高级筛选/排序”。
(2)在字段中选择“性别”,条件中输入“="女"”。
(3)选择“记录”菜单中的“应
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库及其应用 数据库 及其 应用 实验 报告