VFP数据库课后习题参考答案Word文档格式.docx
- 文档编号:21254719
- 上传时间:2023-01-28
- 格式:DOCX
- 页数:105
- 大小:3.26MB
VFP数据库课后习题参考答案Word文档格式.docx
《VFP数据库课后习题参考答案Word文档格式.docx》由会员分享,可在线阅读,更多相关《VFP数据库课后习题参考答案Word文档格式.docx(105页珍藏版)》请在冰豆网上搜索。
①数据结构化,在同一数据库中的数据文件是有联系的,而且在整体上服从一定的结构形式。
②数据共享性好,数据库内数据可以供多个用户使用,提高了信息的利用率。
③数据独立性高,数据独立于程序而面向数据库,便于对数据的完整性、通用性、安全性提供统一有效的管理。
④数据冗余少,原则上可以消除重复,为了方便查询或者因程序设计的需要,允许存在小量重复数据,这由设计人员自行控制。
3.答:
一般地讲,数据模型是严格定义的概念的集合,这些概念精确描述了系统的静态特性、动态特性和完整性约束。
因此,数据模型通常由数据结构、数据操作和数据约束3部分组成,这三个组成要素完整地描述了数据模型。
(1)数据结构是所研究的对象类型的集合,是数据库的组成部分。
研究数据结构的任务是利用计算机系统的知识来描述客观世界的对象,以便能方便地进行处理。
例如在关系结构中,使用表格数据结构来描述客观世界中的对象等。
(2)数据操作是指对数据库中各种对象或者实例允许执行的操作的集合,包括操作以及操作的规则等。
数据库操作主要包括了检索和更新(包括插入、删除、修改等等)两类操作。
(3)数据约束是指完整性规则的集合。
完整性规则是给定的数据模型中数据及其联系所具有的制约和依存规则,用以限定符号数据模型的数据库状态及状态的变化,以保证数据的正确、有效和兼容。
4.答:
(1)层次模型就是利用树型结构来表示实体及其之间联系的模型,层次模型中的结点为记录型,表示某种类型的实体,结点之间的连线则表示了它们之间的关系,其特点是:
①有且仅有一个结点无双亲结点,即根结点。
②根结点以外的其他结点有且仅有一个双亲结点。
(2)网状模型就是利用网状结构来表示实体及其之间联系的模型,网状结构是层次模型的扩展,它表示多个从属关系的层次结构,呈现一种交叉关系的网络结构。
网状模型是以记录为结点的网络结构,其典型代表是DBTG系统,网状模型具有如下特点:
①可以有一个以上的结点无双亲结点。
②至少有一个结点有多于一个的双亲结点。
(3)关系模型就是用二维表结构来表示实体以及实体之间联系的模型,关系模型把各种联系都统一描述成一些二维表,即由若干行和若干列组成的表格。
每一个这样的二维表格就称为一个关系。
由于关系模型结构简单、概念单一,用户易懂易用,自从其诞生以来就深受用户的喜爱,本书所介绍的VisualFoxPro就是基于关系模型的关系数据库管理系统,是至今为止最常见的数据库管理系统,
(4)20世纪90年代中期以来,人们发现关系模型有着查询效率不如非关系模型等一些缺陷,所以提出了面向对象模型。
面向对象模型一方面对数据结构方面的关系结构进行了改良,另一方面为数据操作引入了对象操作的概念和手段。
如今的数据库管理系统基本上都提供了这方面的功能。
5.答:
(1)数据库系统的优点:
①数据结构化。
不同记录之间存在着联系,描述数据时不仅描述数据本身还要描述数据之间存在的联系,这是数据库系统的本质特征。
②数据共享。
多个应用可以使用同一数据库,同一时刻多个用户也可以存取同一数据。
③数据独立性。
所谓数据独立是指应用程序不必随数据存储结构的改变而变动。
数据独立包括数据的物理独立性和逻辑独立性。
④数据的可控冗余度。
从理论上讲,数据库中的数据可以完全避免冗余,但是为了提高系统的效率或网络的友好性,往往容许少量数据冗余,这种数据的冗余是可以人为控制的,所以称为可控冗余度。
⑤数据一致性。
由于数据采用相应方法进行组织,相互之间采用一定的机制进行相关约束,从而保障了数据的一致性。
⑥数据安全性。
数据库加入了安全保密机制,可以防止对数据的非法存取。
另外,数据库系统还采取了一系列措施,来恢复对数据库的破坏。
(2)数据库系统的缺点:
①建立数据库的费用较高。
数据库系统软件和与之相联系的任何硬件都可能是昂贵的。
②添加内容时变得复杂。
数据库系统比文件系统管理复杂得多。
从理论上讲,系统越复杂,就越容易失败,恢复也越困难。
③数据风险集中化,数据集中存储,虽然减少了数据冗余,但集中存储也同样使数据损坏和丢失的风险增加了。
一般应使这种风险降低到最小程度。
6.答:
(1)第一代数据库系统是20世纪70年代研制的层次数据库和网状数据库系统。
这一代数据库系统采用“记录”为基本的数据结构,在不同的“记录型”之间,允许存在相互联系。
无论层次模型还是网状模型,依次查询只能访问数据库种的一条记录,存取效率不高。
对于存在复杂联系的系统,还需要用户详细描述数据的访问路径。
(2)第二代数据库系统是关系型数据库系统。
这一代数据库系统采用了人们习惯的二维表格作为基本的数据结构(即关系模型),通过公共的关键字段来实现不同二维表之间的数据联系。
关系型数据库系统允许一次查询仅用一条命令或者语句来访问整个“关系”,通过多表联合操作,还能在有联系的多个二维表之间实现“关联”查询。
关系模型简单明了、理论严谨,用户容易理解、容易使用,因此深受欢迎。
(3)第三代数据库系统又称作对象-关系数据库系统。
将数据库技术与面向对象技术想结合,就是第三代数据库系统的基础。
第三代数据库系统除了应当包含第二代数据库系统的功能,应当支持类、继承、函数等等对象机制以外,还应当支持正文、声音、图像等新的数据类型,并提供高度集成的、可支持客户/服务器应用的用户接口等。
7.答:
在同一个数据库中,表间关联关系通常有一对一、一对多和多对一3种类型。
(1)一对一关系即在两个数据表中选一个相同属性字段作为关键字段,把其中一个数据表中的关键字段称为主关键字段,该字段值是惟一的,而另一个数据表中的关键字段称为外来关键字段,该字段值也是惟一的。
即A表中的每一条记录在B表中仅能有一个匹配记录,同样在B表中的每一条记录也只能在A表中有一个匹配记录。
(2)一对多关系,即在两个数据表中选一个相同属性字段作为关键字段,把其中一个数据表的关键字段称为主关键字段,该字段值是惟一的,而把另一个数据表中的关键字段称为外来关键字段,该字段值是重复的。
即A表中的一条记录能与B表中的多个记录相匹配,但是B表中的一条记录仅能与A表中的一个记录匹配。
(3)多对一关系与一对多关系是类似的,惟一的区别是在两个相关联的数据表中,选择哪一个数据表中的关键字段为主关键字段,该字段值是重复的,与它关联的另一个数据表中的关键字段为外来关键字段,该字段值是惟一的。
即A表中的一条记录仅能与B表中的一个记录匹配,但是B表中的一条记录能与A表中的多个记录相匹配。
8.答:
关系操作也叫做关系运算,是基于关系模型上的基础操作。
关系操作属于集合运算范畴,常见的关系操作包括投影操作、选择操作和连接操作3种。
(1)投影运算是从关系中选择某些字段的所有值而组成一个新的关系,即是对一个关系在列的方向上进行选择,删除关系中的某些列,并按要求重新排列次序。
(2)选择运算是从关系中选择某些满足条件的记录而组成一个新的关系,即是对一个关系在行的方向上进行选择,它把符合某个条件的元组选择出来,重新构成一个原关系的子集。
(3)连接运算是将两个或者多个关系通过连接条件而组成一个新的关系,即是从两个关系中选择属性间满足一定条件的元组,重新构成的一个关系。
9.答:
关系完整性即关系中数据以及具有关联关系的数据之间必须遵循的制约和依存关系,主要用于保证数据的正确性、有效性和兼容性。
关系模型的完整性规则主要有实体完整性、域完整性、参照完整性和用户定义完整性4种类型。
(1)实体完整性。
关系通常对应现实世界的一个实体集。
现实世界中的实体是可区分的,即每个实体具有某种惟一性标识。
相应地,在关系模型中以主关键字作为该实体记录的惟一标识。
实体完整性规则要求主关键字中的属性不能重复或者取空值。
(2)域完整性。
域完整性是指数据库表中的列必须满足某种特定的数据类型或约束。
其中约束又包括取值范围、精度等规定。
例如在记录成绩数据时,通常规定成绩取值范围在0~100之间,这种约束称为域完整性约束。
(3)参照完整性。
参照完整性是指两个表的主关键字和外关键字的数据对应一致。
它确保了有主关键字的表中对应其他表的外关键字的行存在,即保证了表之间的数据的一致性,防止了数据丢失或者无意义的数据在数据库中扩散。
参照完整性是建立在外关键字和主关键字之间或外关键字和惟一性关键字之间的关系上的。
(4)用户自定义完整性。
不同的关系数据库系统根据其应用环境的不同,往往还需要一些特殊的约束条件。
用户定义的完整性就是针对某个特定关系数据库的约束条件,它反映了某一具体应用所涉及的数据必须满足的语义要求。
第2章
1.D2.B3.C4.A
1.数据环境设计器
2.1;
3.SetDefaultToC:
\VFP练习
4.菜单操作工具操作命令操作
5..bdf.dbc
VFP9.0作为微软公司推出VisualFoxPro系列产品中的最新版本,出现了不少令人欣喜的新增功能,集成开发系统、数据处理方式以及报表设计器等都有了不同程度的增强,使得开发者可以进一步提高软件开发效率。
(1)强大的集成开发系统。
VFP9.0在字体和颜色方面做了很大调整,允许用户自定义设置个性化的字体和颜色;
增强了类的操作,允许用户为类的自定义属性设置缺省值;
VFP9.0新增了一个数据浏览器,方便用户对数据进行查看和操控;
VFP9.0对程序编辑窗口也做了很大的增强,方便用户及时进行代码查错和纠正等。
(2)新的数据处理方式。
VFP9.0增强了SQL结构化查询语言,取消了很多硬编码的限制,增强了子查询和关联查询的支持;
引进了一个新的索引类型(二进制索引),同时提高了过滤型索引的性能等等;
支持AutoInc、VarChar、VarBinary和Blob等新的数据类型,并提供相应的类型转换函数,增强了现有函数对数据类型的控制和转换能力;
增强了事务控制的能力,游标机制使得代码逻辑更加清晰,并且对CursorAdapter作了加强,使开发者只需几行代码就可以方便地访问远程视图等
(3)强大的报表设计器。
提供了全新的报表系统的架构,允许在处理数据和对象定位的同时处理显示和输出的事务,实现与报表进程的交互操作;
VFP9.0提供了新的报表语法,并支持使用旧的报表引擎运行报表;
VFP9.0包含了ReportListener的两个子类,用来提供HTML和XML输出,提供了更多的报表输出类型;
在新版本的VFP9.0中用户不仅可以改变字段的外形,还可以在报表监听器中执行自己需要的任何事务等。
(4)其他功能。
VFP9.0为了适应软件发展的需要,还在其他方面做了改进,如增强向导功能、支持WindowsXP主题、智能感知脚本、新的NorthWind样例数据库等等,使用这些新功能可以使开发出来的应用程序具有更加强大的功能、更加方便的操作。
(1)标题栏。
“标题栏”位于VFP操作界面的顶部,显示VisualFoxPro的系统图标、系统名称、版本信息以及常用的界面操作按钮。
(2)菜单栏。
“菜单栏”位于“标题栏”的下面,显示了所有的菜单选项,但是“菜单栏”并不是一成不变的,它会根据当前操作的状态来增加、减少或者改变菜单选项。
(3)工具栏。
“工具栏”位于“菜单栏”的下面,显示了常用工具按钮,将鼠标移到这些图标上,会自动显示相应的名称或者含义。
(4)状态栏。
“状态栏”位于VFP操作界面的底部,用于显示数据库管理系统当前的操作状态、数据的路径等信息。
(5)系统工作区。
“系统工作区”又称作系统主窗口,是位于“工具栏”和“状态栏”之间的空白区域,各种设计器、生成器、对话框等都在这里打开并进行操作的。
(6)命令窗口。
“命令窗口”是位于系统工作区里面的一个“命令对话框”,它是进行输入与编辑VFP系统命令的主要窗口。
VFP的菜单栏并不是一成不变的,它会根据当前操作的状态来增加、减少或者改变菜单的选项。
例如,当用户打开一个数据表的时候,系统就会在菜单栏中添加一个名为“表”的菜单选项,此时“显示”菜单选项也会相应改变成与表操作相关的子菜单;
同样的,当用户打开一个报表的时候,菜单栏中就会添加一个名为“报表”的菜单选项,此时“显示”菜单选项也会相应改变成与报表操作相关的子菜单,在VFP中,这些随着不同对象的打开而增加或者改变的菜单统称为敏感菜单。
在VFP中,当编辑数据表时,系统会增加一个名为“表”的敏感菜单;
当编辑表单时,系统会增加一个名为“表单”的敏感菜单;
当编辑报表时,系统会增加一个名为“报表”的敏感菜单;
当编辑菜单时,系统会增加一个名为“菜单”的敏感菜单;
当编辑查询(视图)时,系统会增加一个名为“查询”的敏感菜单;
当编辑类时,系统会增加一个名为“类”的敏感菜单。
值得注意的是,系统在增加相应敏感菜单的同时,在“显示”菜单中会增加一些对应于当前操作方面的命令。
在VFP中,应用程序一般是由数据库、数据表、表单、菜单、报表、标签、程序等组件构成的,为了更好地管理这些组件,VFP将这些组件放到一个统一的管理环境中去管理,这个管理工具称为项目管理器。
项目管理器是VFP的控制中心,是VFP处理数据和对象的主要组织工具,在整个系统开发过程中,项目管理器都处于一个非常重要的地位,它包括以下几部分:
(1)文件选项卡。
项目管理器的顶部为文件选项卡,一共有6个文件选项卡,分别是全部、数据、文档、类、代码和其他。
其中“全部”文件选项卡中包含了其他5个选项卡的内容。
(2)对象视图区。
项目管理器的左面为项目对象视图区,列举出该类型中所有可以进行编辑的对象。
对象视图区的对象默认是以目录树的形式分层折迭起来的,用户可以通过单击左边的“+”或者“-”符号来扩展或者折迭显示。
(3)命令按钮区。
项目管理器的右边是相应的命令按钮区,列举出某一类型文件的操作命令,包括新建、添加、修改、浏览(或者运行)、移去以及连编等几种命令按钮。
(4)状态说明区。
项目管理器的最下面是状态说明区,主要是显示用户当前操作的对象以及对象的路径等等,方便用户对项目的查找。
(1)VFP向导。
VFP向导是一种快捷设计的工具,它通过一系列对话框向用户提示每一步的操作,引导用户选定所需要的选项,回答系统提出的问题,一步一步地完成某项任务。
向导的最大特点是“快”,但它所能完成的任务也比较简单。
在实际应用中,我们可以先利用向导创建一个较为简单的框架,然后再使用相应的设计器进行修改。
(2)VFP设计器。
VFP的大多数工作都是与设计器密不可分的,每个设计器都有一个或者多个工具栏,方便用户使用大多数的常用工具,例如,表单设计器中就有表单控件、布局以及调色板等工具栏。
设计器具有比向导更强大的功能,为用户创建特定类型对象提供了很好的开发环境,也可以用来创建或者修改VFP应用程序所需要的构件。
(3)VFP生成器。
生成器又称作构造器,其主要的功能是在VFP应用程序的构件中生成并加入某类控件。
VFP中大多数控件的创建和修改都可以使用生成器。
每个生成器显示一系列选项卡,供用户设置所选中对象的属性。
在VFP操作过程中,除了使用菜单操作以外,最主要的就是通过命令方式进行操作,这些命令都有严格的格式和语法规则,它们具有以下几个特点:
(1)VFP命令都使用英文祈使句的形式,命令的各部分简洁规范,易于理解。
(2)操作对象、结果和条件都可以用命令字句的形式来表示,命令子句用于给出符合条件或者参数,它们使命令功能更加丰富,使用更为灵活。
(3)命令中只讲对操作的要求,不描述具体操作过程,所以又叫做“非过程化”语言,而常见的高级语言都是“过程化”语言。
(4)VFP中的命令既可以逐条用交互的方式执行,又可以编写成程序,以“程序文件”的方式执行。
命令语句还可以使用简写,即可以只写命令的前4个字母代替当前命令。
(5)程序中一行只能存放一条命令,如果一条命令太长而一行写不下的时候,可以通过分号来续行编写。
VFP系统提供了交互操作和程序操作2种操作方式,其中交互操作又包括了命令操作、菜单操作和工具操作3种类型。
(1)交互操作方式包括菜单操作、工具操作和命令操作3种类型。
命令操作是传统的交互操作方式,用户在命令窗口中输入并执行所需命令,即可在屏幕中显示执行结果。
这种方式简明快捷,能够直接使用系统的各种命令和函数,有效地操纵数据库,但是需要熟练掌握命令的格式和功能。
菜单操作和工具操作可以统称为界面操作,在实际工作中没有明确的区分。
VFP提供了大量的向导、设计器、生成器等界面操作工具,这些工具一般都配有了常用的工具栏和菜单选项,以便用户随时调用。
这种操作方式不要求记住繁琐的命令,易学易用,因而深受用户欢迎,是VFP中最主要的操作方式。
(2)程序操作方式就是将多条VFP命令编写成特定的序列,保存为程序文件,并通过运行这个程序文件来达到操作数据的目的,程序操作的方式不仅运行效率高,而且可以重复执行。
利用这种方式可以有效的将程序的编写者和使用者分开,只提供最简洁的界面交给用户去操作,用户可以不必知道程序的内部结构和命令,从而将用户的介入减至最低限度。
注意:
VFP的程序设计和其他高级语言的程序设计是一样的。
第3章
1.C2.B3.D4.B5.D
1.逻辑型通用型
2.16
3.6个
4.4
5.15
在VFP中,数据有型与值之分,型是数据的分类,值是数据的具体表示,数据处理的基本要求就是对同一类型的数据进行归类整理,只有相同类型的数据才能进行操作。
为了适应存储数据的需要,VFP定义了多种数据类型,常用的数据类型有如表A-1所示的几种。
表A-1VFP常见的数据类型
数据
类型
代号
说明
字段宽度
取值范围
字符型
C
存放任意文本,包括汉字、字母、字符等
最多254个字节,每个字节代表一个字符
任意字符
数值型
N
存放正负号、数字合小数点组成的数据
最多20位
从-.9999999999E+19到.9999999999E+20
浮点型
F
同数值型,为与其他软件兼容而设置的
从-.9999999999E+19到.9999999999E+20
双精度型
B
存放精度要求较高的数值,或者真正的浮点数
固定8个字节
从+/-4.94065645841247E-324到+/-8.9884656743115E307
日期型
D
存放包含有年、月和日的数据
从01/01/100到12/31/9999
日期时间型
T
存放包含有年、月、日和时间的数据
从01/01/100到12/31/9999,加上上午00:
00:
00到下午11:
59:
59
续表A-1
整型
I
存放不带小数的整数数值
固定4个字节
从-2147483647到2147483646
逻辑型
L
存放逻辑值T或者F,T为真,F为假
固定1个字节
真值或者假值
货币型
Y
存放货币量,与数值型不同的是货币型数据保留4位小数
从-922337203685477.5808到922337203685477.5807
备注型
M
存放一切字符型数据,保存在扩展名为.fpt的备注文件中
只受可用内存空间限制
通用型
G
存放图形、声音、表格等多媒体数据。
数据也保存在扩展名为.fpt的备注文件中
常量是固定不变的数据,它的值在整个操作过程中是保持不变的,VFP支持的常量有数值型、字符型、逻辑型、日期型、日期时间型和货币型等多种类型。
(1)数值型常量由数字、小数点和正负号组成,如123,-12368,+3325.67等等。
数值型常量可以带正负号的整数或者小数,还可以用科学记数法表示,如2.5E+15等等,注意:
这样表示的常量是F型(浮点型),而不是N型(数值型)。
(2)字符型常量是由汉字和ASCII字符组成,并由定界符括起来的字符串。
如“String”,“数据库应用系统”,[计算机]等等。
值得注意的是,在字符串的两端必须加上定界符,否则系统会把该字符串当成变量名。
(3)逻辑型常量也称作布尔型常量,它只有两个逻辑值,即逻辑真值或者逻辑假值,逻辑真可以用大写.T.或者.Y.表示,也可以用小写.t.或者.y.来表示;
逻辑假可以用大写.F.、.N.或者小写.f.、.n.来表示。
字母两端紧靠小圆点是逻辑型常量的定界符。
(4)日期型常量一定要包括年、月、日三个值,并且必须放在一对花括号中,每两个值之间由一个分隔符(如“/”)隔开,例如:
{06/21/1999}等,空白的日期可以表示为{}或{/}。
除了这种MDY格式以外,还有一种严格的日期格式,例如{^2002/12/20},格式中的“^”符号表示该日期格式是严格的,并按照YMD的格式来解释日期。
(5)日期时间型常量值中既含有日期又含有时间,日期值包括年、月、日,时间值包括时、分、秒,其中时分秒的分隔符为冒号(:
)。
它的书写方式近似于日期型,例如{9/21/9910:
00},空白的日期时间则可以表示为{/:
}。
日期时间型常量和日期型常量一样,也有一种严格的格式,例如{^2002/12/2010:
34P}等。
(6)货币型常量必须以“$”符号开头,并四舍五入到小数4位。
例如货币型常量$100.12345,四舍五入后结果为$100.1235。
首先,使用ReleaseAll命令清除以前创建过的内存变量,使用Clear命令清空在VFP屏幕中显示的内容。
接着使用“<
内存变量>
=<
表达式>
”以及“Store<
To<
”两种建立内存变量的方法创建内存变
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VFP 数据库 课后 习题 参考答案