加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

《数据库及其应用》实验报告1

(2011-05-20 22:15:31)
标签:

杂谈

《数据库及其应用》实验报告

 

实验序号:B0901000-02 实验项目名称:数据库设计和创建、表的创建与相关设置

学  号

 

姓  名

专业、班

 

实验地点

现教中心

指导教师

杨博

时间

一、实验目的及要求

1.熟悉Access中数据库及表的概念。了解并掌握建立数据库、表和关系的过程。

2.熟悉数据库窗口的界面特点,掌握数据库窗口几种设置方法。

3.理解并掌握关系数据库完整性基本概念。掌握完整性的设置方法。

4.掌握字段属性的概念和一些属性的用途。并掌握一些字段属性的设置方法。

5.了解Access数据表视图的一些基本功能。

6.了解在数据表视图中进行操作时的不同特点。

 

二、实验设备(环境)及要求

PC机,Windows XP,Access 2003

三、实验内容要求

(实验操作内容和步骤可写在表格后面)

(一) 数据库与表的设计与创建

1.给定如下数据分析,进行概念设计与逻辑设计。即设计系统的E-R模型并转换为关系模型。(数据参见附表)。

某学校设计学生教学管理系统。学生实体包括学号、姓名、性别、生日、民族、籍贯、简历、登记照,每名学生选择一个主修专业,专业包括专业编号和名称,一个专业属于一个学院,一个学院可以有若干个专业。学院信息要存储学院号、学院名、院长。教学管理还要管理课程表和学生成绩。课程表包括课程号、课程名、学分,每门课程由一个学院开设。学生选修的每门课程获得一个成绩。

 

http://s16/middle/4ec749ed4a3b5bdac3b5f&690

2. 数据库结构设计

指定数据库文件的名称,并为设计好的关系模型设计表结构。

数据库文件保存在"E:\教学管理\"文件夹中。

数据库文件名为"学生教学管理",各表结构设计如下:

学生结构

字段名

类型

宽度

小数位

主键/索引

参照表

约束

NULL

学号

文本型

8 

 

↑(主)

     

姓名

文本型

3 

         

性别

文本型

2

     

男或女

 

生日

日期/时间型

           

民族

文本型

2 

         

籍贯

文本型

8 

         

简历

备注型

           

登记照

OLE 对象

           

专业编号

文本型

4 

         

 

专业结构

字段名

类型

宽度

小数位

主键/索引

参照表

约束

NULL

专业编号

文本型

4 

 

↑(主)

     

名称

文本型

6 

         

学院号

文本型

2 

         

专业类别

文本型

6 

         

 

课程结构

字段名

类型

宽度

小数位

主键/索引

参照表

约束

NULL

课程号

文本型

8 

 

↑(主)

     

课程名

文本型

6 

         

学分

数字型

 

1 

       

学院号

文本型

2 

         

 

学院结构

字段名

类型

宽度

小数位

主键/索引

参照表

约束

NULL

学院号

文本型

2 

 

↑(主)

     

学院名

文本型

6 

         

院长

文本型

3 

         

 

成绩结构

字段名

类型

宽度

小数位

主键/索引

参照表

约束

NULL

学号

文本型

8 

 

↑(主)

     

课程号

文本型

8 

         

成绩

数字型

           

 

3.定义数据库文件

定义存放路径,和数据库文件。写出操作步骤。可包括必要的截图。

步骤:启动acess,在"文件"菜单中选择"新建",在右边选"空数据库",保存位置为"E:\教学管理\",输入文件名"学生教学管理",单击"创建"即可

4.定义数据库中各表

根据事先设计好的结构,分别定义各表、字段名、字段属性。

重复的步骤可简化。

学号:

字段大小

8 

格式

 

输入掩码

99999999 

标题

 

默认值

 

有效性规则

 

有效性文本

 

必填字段

允许空字符串

索引

有(无重复)

Unicode压缩

输入法模式

开启

IME语句模式(仅日文

无转化

智能标记

 

性别;

字段大小

2

格式

 

输入掩码

 

标题

 

默认值

 

有效性规则

="男"or="女"

有效性文本

只能输入"男"或"女"

必填字段

允许空字符串

索引

Unicode压缩

输入法模式

开启

IME语句模式(仅日文

无转化

智能标记

 

生日;

字段大小

 

格式

ddddd

输入掩码

 

标题

 

默认值

NULL

有效性规则

 

有效性文本

 

必填字段

允许空字符串

索引

Unicode压缩

输入法模式

开启

IME语句模式(仅日文

无转化

智能标记

 

学分

字段大小

单精度

格式

 

输入掩码

 

标题

 

默认值

 

有效性规则

 

有效性文本

 

必填字段

允许空字符串

索引

Unicode压缩

输入法模式

开启

IME语句模式(仅日文

无转化

智能标记

 

另外,把"成绩"的字段大小设为长整型。

其他字段的字段属性类似,在此不再重复了

 

5.定义表之间的关系

当所有表都定义好后,定义各表之间的关系。

6.输入表记录

当所有表建立好后,可开始输入记录。简要说明输入的操作。

操作:双击要输入记录的表,然后输入即可。完毕后单击工具栏上的"保存"

(二)Access数据库窗口基本操作

1.设置教学管理数据库窗口中表对象列表窗口的显示格式为"详细信息"

写出操作步骤: 单击命令栏上的" 详细信息"按钮

2.隐藏和重新显示教学管理数据库窗口

写出操作步骤:单击"工具"菜单中的"启动",在弹出的对话框中清除"显示数据库窗口"复选框,再确定,就隐藏了;

若要显示,按F11 键,进入"启动",选中"显示数据库窗口"复选框,确定

3.定义一个"学生与成绩"组,将"学生"、"成绩"表放置到该组中

写出创建组的操作和放置对象的操作:进入"编辑"→"组"→"新组",然后输入新组名称为"学生与成绩",确定。然后选择表对象,选中"成绩"右击,选择"添加到组"→"学生与成绩",即可将"成绩"表放到该组中,"学生"可类似添加

(三)创建表时的完整性设置

1.定义主键,实现实体完整性的操作

每个表都可以定义主键。在Access中为教学管理数据库的各表定义主键。

当一个表没有合适的字段作为主键时,一般会增加一个"id"字段。试在"成绩"表中增加一个"成绩id"字段,并定义为"自动编号"型,然后定义其为主键。

2.进行设置参照完整性的操作

在定义的有关系的表上,为关系设置参照完整性。

3.通过不同方式实现用户定义的完整性的操作

用户定义的完整性,是指由用户规定的对于表中数据取值的约束。在Access表定义时,除定义主键和关系外,通过多种方式设置用户定义完整性。

对教学管理数据库中必要的用户定义完整性进行设置和定义。

(四)字段属性定义与应用

1.字段显示格式设置

① 使"学生"表中的"民族"字段以黄色显示。

在"格式"属性中输入:&&【黄色】

② 使"学生"的生日以中文方式、红色显示。

将生日字段设为文本型,格式:&&&&"年"&&"月"&&"日"【红色】

③ 使"成绩"表中成绩的显示为3位整数和一位小数,蓝色。

将"成绩"字段设为单精度型,小数位数设为1,格式:###.#【蓝色】

2.字段输入掩码设置

在定义"学生"表时,由于"学号"是8位文本,且每位都由0~9组成,因此,要在定义"学号"字段时规定每一位的输入都必须是数字。

输入掩码:00000000

其他如课程表的"课程号"字段、专业表的"专业号"字段等都可以定义类似的输入掩码。

3.定义字段查阅方法

"查阅"控件与字段绑定,可以提示字段的输入。为"专业"表的"专业类别"定义查阅控件绑定。

进入"专业"表的设计视图,点"专业类别"字段,选"查询"。显示控件:列表框;行来源类型:值列表;行来源类型:"人文学";"经济学";"法学";"管理学";"工学"

为"专业"表的"学院号"字段设计"查阅"控件。数据从"学院"表中来,显示"学院号"和"学院名"两列数据,采用列表框。

进入"专业"表的设计视图,点"学院号"字段,选"查询"。显示控件:组合框;行来源类型:表/查询;行来源:学院;绑定列:1;列数:2

(五)数据表视图下数据记录的显示与操作

1.输入操作

利用数据表视图进行输入操作,输入的数据应该满足完整性的要求。而如果是有关系的表中的子表,外键输入时还要与主键值对应。

根据给定的数据,为数据库中各表(重点介绍一到两个表)输入记录。

2. 修改和删除操作

修改"课程"表,将"运筹学"所在记录的学分增加1分,将开设学院变为"工商管理学院(05)"。

双击所要修改的字段值,然后按空格键删除,重新输入记录即可

删除"课程"表中"美术设计"课程。

选中"美术设计"整条记录,然后右击,在快捷菜单中选"删除记录"即可

3. 数据表视图中的设置

数据表视图是浏览表中数据的界面,可以做不同的设置,以获得不同的效果。

  1. 数据表视图中父子表的展开。

启动"专业"表"数据表"视图,单击展开指示器(+),就可以看到对应的"学生"表数据

② 按照指定的字段排序浏览。

在"成绩"数据表视图中,按照成绩的大小排列。

启动"成绩"表"数据表"视图,单击"成绩"字段上的字段选择器,选中整列,然后单击工具栏上的升序(或降序)按钮即可

③ 在学生表中只显示女生数据记录。

在"学生"表的数据表视图中,选择"记录"—"筛选"—"按窗体筛选"命令,选择"性别"字段,从列表中选择"女"。再从"筛选"菜单"选择"筛选""应用筛选/排序",就只显示女生信息。

 

四、回答问题

1.Access存储数据时,用到几个数据库文件?扩展名是什么?

答:一个,扩展名是".mdb"

2.设计ER模型、关系模型、数据库及表结构,分别属于数据库设计中的什么步骤?

答:概念设计、逻辑设计、物理设计

3.在表结构设计中,应该包含哪些内容?

答:数据类型,字段属性的设置

4.在本实验设计中,共使用了哪些数据类型?

答:文本型,数字型,备注型,日期/时间型,OLE对象

5.定义表之间的关系时,"实施参照完整性"的意义是什么?在"编辑关系"对话框中选中或者撤销"级联更新相关字段"复选框,对于数据表的操作有何影响?

答:意义:对建立了父子表关系的表之间实施数据一致性的约束。影响:选中,则当父表修改主键值时,如果子表中的外键有对应值,外键的对应值将自动级联更新;撤销,则当父表修改主键值而子表中的外键有对应值,acess会拒绝修改主键值

6.建立表的关系,是否要求发生关系的两个字段必须同名?

答:不是

7.在定义学生表的"性别"字段时,同时定义了字段的"有效性规则",对输入学生表的记录有什么影响?

答:只能输入男或者女,如果输别的它会提示你

8.如何输入学生照片?

答:方法一,复制后直接粘贴到要输入的字段上;方法二,在该字段上右击,选择"插入对象",选中"由文件创建",找到照片所在的位置,然后确定即可

9 .如何理解"收藏夹",试说明"收藏夹"与组之间的异同。

答:收藏夹是acess系统自动定义的一个项目,它与组的功能相同,但是不能删除,而组可以删除

10.打开数据库文件时,有哪几种可选择的方式?一般默认方式是什么?如果要将默认方式设置为"独占"如何实现?

答:打开、以独占方式打开、以只读方式打开、以独占只读方式打开。默认的是打开。在打开对话框中,点击下面的"打开"右边的小向下三角形,选择"以独占方式打开"即可

11. 在"学生"表的设计器中,选择"学号"字段,然后单击工具栏"主键"按钮,以便取消主键,这时会出现什么情况?为什么?

答:"学号"字段左边的主键图标没有了

12. 在"编辑关系"对话框中,只有选中"实施参照完整性",才可以选择"级联更新关联字段"和"级联删除关联字段"。试解释这三种复选项的控制意义。

答:选中"事实参照完整性"复选框,这样,在子表中添加或更新数据时,Access将检验子表新加入的与主键有关的外键值是否满足参照完整性。如果外键值没有与之对应的主键值,Access将拒绝添加或更新数据。

在选中"事实参照完整性"复选框的前提下可选择"级联更新相关字段"。含义是,当父表修改主键值时,如果子表中的外键有对应值,外键的对应值将自动级联更新。

在选中"事实参照完整性"复选框的前提下,可选"级联删除相关记录"复选框。含义是,当父表删除主键值时,如果子表中的外键有对应值,外键所在的记录间自动级联删除。

 

13.当在输入记录时,如果发生主键字段重复,会出现什么现象?如果输入的外键值如专业表的"学院号"在"学院"中没有对应的值,会出现什么情况?

答:主键字段重复,会提示请求对表的改动没有成功;外键值没有对应的值,则会提示由于父表需要一个相关记录,不能添加或修改记录

14. 定义表时,设置"有效性文本"字段属性有何作用?

答:在你输入错误时会提醒你该输入什么

15. 在定义"文本"型字段格式时,"@"符号与"&"符号作为占位符有何区别?在定义"数字"型字段格式时,"#"符号与"0"符号作为占位符有何区别?

答:@表示必须输入一个字符(空格也行),而&,当没有可用字符要显示,acess将忽略该占位符

0表示只能输入数字(0~9),不能输入+、-;而#表示数字、空格、+、-都可输入到该位置

16. 在本实验的定义"日期/时间"型字段格式时,一个m或d与两位的mm或dd在使用时有何区别?用"\"符号的作用是什么?若设计格式为:dddddd[红色],有何区别?

答:一个m(或d)表示把月份(或某天)显示成一位或两位数字,两位的mm(或dd)表示把月份(某天)显示成固定的两位数字。"/"的作用是将其后跟随的第一个字符原文照印。若设计格式为:dddddd[红色],则日期将以红色长日期的方式显示

17. 定义"输入掩码"属性的实质意义是什么?在定义"学号"字段的输入掩码时,不使用"0"而使用"9"或"#"有和区别?如果在"姓名"字段上必须定义10位输入掩码,那么应该定义什么掩码字符串?

答:一是定义数据的输入格式,二是定义输入数据的某一位上允许输入的值的集合。0表示必须输入0~9到该位置,不允许输入"+"和"-"符号,而输入9则表示0~9或空格可以输入到该位置,也不允许输入"+"和"-"符号,如果该位置没有输入任何数字护着空格,Access奖忽略该占位符。输入#则表示以上多有符号都可以输入到该位置,如果没有输入任何数字则认为是空格。应该定义"&&&&&&&&&&"到该位置。

18. 可以采用查阅方法输入的字段类型有哪些?绑定查阅列表框控件进行输入,如果不点击其中的值,而是输入不同的值,是否可以输入?如果一定要使输入的值限定在列表框的值的范围内,应该如何实现?

答:可以采用查阅方法输入的字段类、型有"文本"、"数字"、"是\否"三种类型。

可以。"查阅"框中选择"显示控件"为"列表框","行数据来源"为"值列表",然后自己定义数据来源即可。

 

19. 若在"课程"表删除"数据库及应用"记录,会发生什么现象?什么含义?

答:会出现"由于成绩单中有包含相关记录,不能删除或更改该记录"。由于建立了"实施参照完整性",相关记录的更改或是删除将会被禁止。

 

20. 在数据表浏览展开子表时,可以最多展开多少层子表?若要同时展开每条记录的的子表,应该如何操作?

答:八层。选择"格式"菜单中的"子数据表"→"全部展开"

五、分析讨论

(根据实验写出一些心得或分析等)

通过这个实验,我对数据库的操作更加熟练了些,同时也理清了我不清楚的地方。我初步熟悉了Access中数据库及表的概念,了解了Access数据表视图的各种基本功能以及在数据表视图中进行各种操作时的不同特点,了解交互方式建立数据库、表和关系的过程。熟悉了数据库窗口的界面特点。

六、教师评语

1.按时完成实验;

2.实验内容和过程记录完整;

3.回答问题完整、正确;

4.有实验的心得或讨论;

5.实验报告的撰写认真、格式符合要求。

签名: 杨博

日期:2009.3

成绩

 

 

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有