全国计算机等级考试二级Visual FoxPro数据库设计.docx
- 文档编号:10946431
- 上传时间:2023-02-23
- 格式:DOCX
- 页数:18
- 大小:30.38KB
全国计算机等级考试二级Visual FoxPro数据库设计.docx
《全国计算机等级考试二级Visual FoxPro数据库设计.docx》由会员分享,可在线阅读,更多相关《全国计算机等级考试二级Visual FoxPro数据库设计.docx(18页珍藏版)》请在冰豆网上搜索。
全国计算机等级考试二级VisualFoxPro数据库设计
2005年9月笔试试卷
一、选择题(
(1)~(35)题每小题2分,共70分)
下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。
请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。
(1)下列叙述中正确的是
A)程序设计就是编制程序B)程序的测试必须由程序员自己去完成
C)程序经调试改错后还应进行再测试D)程序经调试改错后不必进行再测试
(2)下列数据结构中,能用二分法进行查找的是
A)顺序存储的有序线性表B)线性链表C)二叉链表D)有序线性链表
(3)下列关于栈的描述正确的是
A)在栈中只能插入元素而不能删除元素
B)在栈中只能删除元素而不能插入元素
C)栈是特殊的线性表,只能在一端插入或删除元素
D)栈是特殊的线性表,只能在一端插入元素,而在另一端删除元素
(4)下列叙述中正确的是
A)一个逻辑数据结构只能有一种存储结构
B)数据的逻辑结构属于线性结构,存储结构属于非线性结构
C)一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率
D)一个逻辑数据结构可有多种存储结构,且各种存储结构影响数据处理的效率
(5)下列描述中正确的是
A)软件工程只是解决软件项目的管理问题
B)软件工程主要解决软件产品的生产率问题
C)软件工程的主要思想是强调在软件开发过程中需要应用工程化原则
D)软件工程只是解决软件开发中的技术问题
(6)在软件设计中,不属于过程设计工具的是
A)PDL(过程设计语言)B)PAD图C)N-S图D)DFD图
(7)下列叙述中正确的是
A)软件交付使用后还需要进行维护B)软件一旦交付使用就不需要再进行维护
C)软件交付使用后其生命周期就结束D)软件维护是指修复程序中被破坏的指令
(8)数据库设计的根本目标是要解决
A)数据共享问题B)数据安全问题C)大量数据存储问题D)简化数据维护
(9)设有如下关系表:
则下列操作中正确的是
A)T=R∩SB)T=R∪SC)T=R×SD)T=R/S
(10)数据库系统的核心的是
A)数据模型B)数据库管理系统C)数据库D)数据库管理员
(11)VisualFoxPro是一种关系型数据库管理系统,这里关系通常是指
A)数据库文件(dbc文件)B)一个数据库中两个表之间有一定的在系
C)表文件(dbf文件)D)一个表文件中两条记录之间有一定的关系
(12)扩展名为mnx的文件是
A)备注文件B)项目文件C)表单文件D)菜单文件
(13)报表的数据源可以是
A)表或视图B)表或查询C)表、查询或视图D)表或其他报表
(14)如果添加到项目中的文件标识为“排除”,表示
A)此类文件不是应用程序的一部分B)生成应用程序时不包括此类文件
C)生成应用程序时包括此类文件,用户可以修改D)生成应用程序时包括此类文件,用户不能修改
(15)“项目管理器”的“运行”按钮用于执行选定的文件,这些文件可以是
A)查询、视图或表单B)表单、报表和标签
C)查询、表单或程序D)以上文件都可以
(16)允许出现重复字段值的索引是
A)侯选索引和主索引B)普通索引和惟一索引C)侯选索引和惟一索引D)普通索引和侯选索引
(17)以纯文本形式保存设计结果的设计器是
A)查询设计器B)表单设计器C)菜单设计器D)以上三种都不是
(18)以下关于视图的描述正确的是
A)视图保存在项目文件中B)视图保存在数据库文件中
C)视图保存在表文件中D)视图保存在视图文件中
(19)下面有关表间永久联系和关联的描述中,正确的是
A)永久联系中的父表一定有索引,关联中的父表不需要有索引
B)无论是永久联系还是关联,子表一定有索引
C)永久联系中子表的记录指针会随父表的记录指针的移动而移动
D)关联中父表的记录指针会随子表的记录指针的移动而移动
(20)下面关于类、对象、属性和方法的叙述中,错误的是
A)类是对一类相似对象的描述,这些对象具有相同种类的属性和方法
B)属性用于描述对象的状态,方法用于表示对象的行为
C)基于同一类产生的两个对象可以分别设置自己的属性值
D)通过执行不同对象的同名方法,其结果必然是相同的
(21)在下面的VisualFoxPro表达式中,运算结果为逻辑真的是
A)EMPTY(.NULL.)B)LIKE('xy?
'、'xyz')C)AT('xy'、'abcxyz')D)ISNULL(SPACE(0))
(22)依次执行以下命令后的输出结果是
SETDATETOYMD
SETCENTURYON
SETCENTURYTO19ROLLOVER10
SETMARKTO"."
?
CTOD("49-05-01")
A)49.05.01B)1949.05.01C)2049.05.01D)出错
(23)假设职员表已在当前工作区打开,其当前记录的“姓名”字段值为“张三”(字符型,宽度为6)。
在命令窗口输入并执行如下命令:
姓名=姓名-"您好"
?
姓名
那么主窗口中将显示
A)张三B)张三您好C)张三您好D)出错
(24)有一个学生表文件,且通过表设计器已经为该表建立了若干普通索引。
其中一个索引的索引表达式为姓名字段,索引名为XM。
现假设学生表已经打开,且处于当前工作区中,那么可以将上述索引设置为当前索引的命令是
A)SETINDEXTO姓名
B)SETINDEXTOXM
C)SETORDERTO姓名
D)SETORDERTOXM
(25)当前打开的图书表中有字符型字段“图书号”,要求将图书号以字母A开头的图书记录全部打上删除标记,通常可以使用命令
A)DELETEFOR图书号="A"
B)DELETEWHILE图书号="A"
C)DELETEFOR图书号="A*"
D)DELETEFOR图书号LIKE"A%"
(26)在VisualFoxPro中,要运行查询文件query1.qpr,可以使用命令
A)DOquery1B)DOquery1.qpr
C)DOQUERYquery1D)RUNquery1
(27)下面程序段的输出结果是
ACCEPTTOA
IFA=[123456]
S=0
ENDIF
S=1
?
S
RETURN
A)0B)1C)由A的值决定D)程序出错
(28)如果在命令窗口输入并执行命令:
“LIST名称”后在主窗口中显示:
记录名名称
1电视机
2计算机
3电话线
4电冰箱
5电线
假定名称字段为字符型、宽度为6,那么下面程序段的输出结果是
GO2
SCANNEXT4FORLEFT(名称,2)="电"
IFRIGHT(名称,2)="线"
LOOP
ENDIF
?
?
名称
ENDSCAN
A)电话线B)电冰箱C)电冰箱电线D)电视机电冰箱
第(29)—(35)题使用如下三个表:
职员DBF:
职员号C(3),姓名C(6),性别C
(2),组号N
(1),职务C(10)
客户DBF:
客户号C(4),客户名C(36),地址C(36),所在城市C(36)
订单DBF:
订单号C(4),客户名C(4),职员号C(3),签订日期D,金额N(6.2)
(29)查询金额最大的那10%订单的信息。
正确的SQL语句是
A)SELECT*TOP10PERCENTFROM订单
B)SELECTTOP10%*FROM订单ORDERBY金额
C)SELECT*TOP10PERCENTFROM订单ORDERBY金额
D)SELECTTOP10PERCENT*FROM订单ORDERBY金额DESC
(30)查询订单数在3个以上、订单的平均金额在200元以上的职员号。
正确的SQL语旬是
A)SELECT职员号FROM订单GROUPBY职员号HAVINGCOUNT(*)>3ANDAVG_金额>200
B)SELECT职员号FROM订单GROUPBY职员号HAVINGCOUNT(*)>3ANDAVG(金额)>200
C)SELECT职员号FROM订单GROUPBY职员号HAVINGCOUNT(*)>3ANDWHEREAVG(金额)>200
D)SELECT职员号FROM订单GROUPBY职员号WHERECOUNT(*)>3ANDAVG_金额>200
(31)显示2005年1月1日后签订的订单,显示订单的订单号、客户名以及签订日期。
正确的SQL语句是
A)SELECT订单号,客户名,签订日期FROM订单JOIN客户
ON订单.客户号=客户.客户号WHERE签订日期>{^2005-1-1}
B)SELECT订单号,客户名.签订日期FROM订单JOIN客户
WHERE订单.客户号=客户.客户号AND签订日期>{^2005-1-1}
C)SELECT订单号,客户名.签订日期FROM订单,客户
WHERE订单.客户号=客户.客户号AND签订日期<{^2005-1-1}
D)SELECT订单号,客户名,签订日期FROM订单,客户
ON订单.客户号=客户.客户号AND签订日期<{^2005-1-1}
(32)显示没有签订任何订单的职员信息(职员号和姓名),正确的SQL语句是
A)SELECT职员.职员号,姓名FROM职员JOIN订单
ON订单.职员号=职员.职员号GROUPBY职员.职员号HAVINGCOUNT(*)=0
B)SELECT职员.职员号,姓名FROM职员LEFTJOIN订单
ON订单.职员号=职员.职员号GROUPBY职员.职员号HAVINGCOUNT(*)=0
C)SELECT职员号,姓名FROM职员
WHERE职员号NOTIN(SELECT职员号FROM订单)
D)SELECT职员.职员号,姓名FROM职员
WHERE职员.职员号<>(SELECT订单.职员号FROM订单)
(33)有以下SQL语句:
SELECT订单号.签订日期,金额FROM订单,职员
WHERE订单.职员号=职员.职员号AND姓名="李二"
与如上语句功能相同的SQL语句是
A)SELECT订单号,签订日期,金额FROM订单
WHEREEXISTS(SELECT*FROM职员WHERE姓名="李二")
B)SELECT订单号,签订日期,金额FROM订单WHERE
EXISTS(SELECT*FROM职员WHERE职员号=订单.职员号AND姓名="李二")
C)SELECT订单号,签订日期,金额FROM订单
WHEREIN(SELECT职员号FROM职员WHERE姓名="李二")
D)SELECT订单号,签订日期,金额FROM订单WHERE
IN(SELECT职员号FROM职员WHERE职员号=订单.职员号AND姓名="李二")
(34)从订单表中删除客户号为“1001”的订单记录,正确的SQL语句是
A)DROPFROM订单WHERE客户号="1001"
B)DROPFROM订单FOR客户号="1001"
C)DELETEFROM订单WHERE客户号="1001"
D)DELETEFROM订单FOR客户号="1001"
(35)将订单号为“0060”的订单金额改为169元,正确的SQL语句是
A)UPDATE订单SET金额=169WHERE订单号="0060"
B)UPDATE订单SET金额WITH169WHERE订单号="0060"
C)UPDATEFROM订单SET金额=169WHERE订单号="0060"
D)UPDATEFROM订单SET金额WITH169WHERE订单号="0060"
二、填空题(每空2分,共30分)
请将每一个空的正确答案写在答题卡【1】~【15】序号的横线上,答在试卷上不得分。
注意:
以命令关键字填空的必须拼写完整。
(1)数据管理技术发展过程经过人工管理、文件系统和数据库系统三个阶段,其中数据独立性最高的阶段是【1】。
数据库系统
(2)算法复杂度主要包括时间复杂度和【2】复杂度。
空间
(3)在进行模块测试时,要为每个被测试的模块另外设计两类模块;驱动模块和承接模块(桩模块)。
其中【3】的作用是将测试数据传送给被测试的模块,并显示被测试模块所产生的结果。
驱动模块
(4)一棵二叉树第六层(根结点为第一层)的结点数最多为【4】个。
32
(5)数据结构分为逻辑结构和存储结构,循环队列属于【5】结构。
存储
(6)在VisualFoxPro中,数据库表中不允许有重复记录是通过指定【6】来实现的。
主关键字(候选关键字)
(7)在VisualFoxPro中,数据库表S中的通用型字段的内容将存储在【7】文件中。
备注
(8)在VisualFoxPro中,可以使用【8】语句跳出SCAN…ENDSCAN循环体外执行ENDSCAN后面的语句。
EXIT
(9)在SQL的SELECT查询中使用【9】子句消除查询结果中的重复记录。
DISTINCT
(10)在VisualFoxPro中,如果要改变表单上表格对象中当前显示的列数,应设置表格的【10】属性值。
ColumnCount
(11)在VisualFoxPro中,使用SQL的SELECT语句将查询结果存储在一个临时表中,应该使用【11】子句。
Intocursor
(12)在VisualFoxPro中,使用SQL的CREATETABLE语句建立数据库表时,使用【12】子句说明主索引。
PRIMARYKEY
(13)在VisualFoxPro中,使用SQL的CREATETABLE语句建立数据库表时,使用【13】子句说明有效性规则(域完整性规则或字段取值范围)。
CHECK
(14)在SQL的SELECT语句进行分组计算查询时,可以使用【14】子句来去掉不满足条件的分组。
HAVING
(15)设有s(学号,姓名,性别)和sc(学号,课程号,成绩)两个表,下面SQL的SELECT
语句检索选修的每门课程的成绩都高于或等于85分的学生的学号、姓名和性别。
SELECT学号,姓名,性别FROMs
WHERE【15】(SELECT*FROMscWHEREsc.学号=s.学号AND成绩<85)
NOTEXISTS
答案及解析
一、选择题
(1)【答案】C)
【解析】程序设计并不等于编程,编程只是程序设计中的一小步。
测试是程序执行的过程,目的在于发现错误,一般不由开发者测试自己的程序,测试发现错误后,可以立即进行调试并改正错误,经调试改错后还应进行再测试。
(2)【答案】A)
【解析】二分查找只适用于顺序存储的有序表。
(3)【答案】C)
【解析】栈是特殊的线性表,在栈顶端既可以插入元素,又可以删除元素;在栈底端不允许插入元素,也不能删除元素。
(4)【答案】D)
【解析】数据的存储结构是指数据的逻辑结构在计算机中的表示,一种逻辑结构可以表示成多种存储结构;而采用不同的存储结构,其数据处理的效率是不同的。
(5)【答案】C)
【解析】软件工程是用工程、科学和数学的原则与方法研制、维护计算机软件的有关技术及管理方法,由于软件开发中面临着纷繁复杂的问题,所以强调用工程化的原则去处理。
(6)【答案】D)
【解析】DFD(数据流图)是常用的结构化分析工具;N-S,PAD,PDL是常见的过程设计工具,其中N-S,PAD属于图形工具,PDL属于语言工具。
(7)【答案】A)
【解析】软件生命周期分为软件定义、软件开发及软件运行维护3个阶段。
维护是软件生命周期的最后一个阶段,也是持续时间最长,花费代价最大的一个阶段。
(8)【答案】A)
【解析】数据库技术的根本目标是要解决数据共享的问题,选项A的说法是正确的。
(9)【答案】B)
【解析】T是R∪S的结果,关系T由属于关系R的或者属于关系S的元组组成。
(10)【答案】B)
【解析】数据库系统的核心是数据库管理系统(DBMS)。
(11)【答案】C)
【解析】在VisualFoxPro中一个表文件(.DBF)就是一个关系。
(12)【答案】D)
【解析】.MNX是菜单数据库文件,存放着菜单的各项定义,并不能直接运行。
(13)【答案】C)
【解析】报表主要包括两部分内容:
数据源和布局。
数据源是报表的数据来源,报表的数据源通常是数据库中的表或自由表,也可以是视图、查询或临时表。
视图和查询对数据库中的数据进行筛选、排序、分组,在定义了一个表、一个视图或查询之后,便可以创建报表。
(14)【答案】C)
【解析】将一个项目编译成一个应用程序时,所有项目包含的文件将组合为一个单一的应用程序文件。
在项目连编之后,那些在项目中标记为“包含”的文件将成为只读文件。
如果应用程序中包含需要用户修改的文件,必须将该文件标为“排除”。
(15)【答案】C)
【解析】项目管理器的“运行”按钮:
执行选定的查询,表单或程序。
当选定项目管理器的一个查询,表单或程序时才可使用。
此按钮与“项目”菜单的“运行文件”命令作用相同。
(16)【答案】B)
【解析】主索引和候选具有关键字特性,其字段值可以保证惟一性,拒绝重复字段。
惟一索引和普通索引允许字段出现重复值。
(17)【答案】A)
【解析】当建立完查询并存盘后将产生一个扩展名为.qpr的文件,这是一个文本文件。
(18)【答案】B)
【解析】视图是在数据表基础上创建的一种虚拟表。
视图的定义保存在所属的数据库(.dbc)文件中。
视图一经定义,就是数据库的一部分,不可以脱离数据库而使用,在打开视图时,首先要打开数据库才可以。
(19)【答案】B)
【解析】关联是能够控制表间记录指针关系的临时联系。
建立关联一般需要通过父表的主索引,子表的普通索引,关联中子表的记录指针随着父表的记录指针的移动而移动。
(20)【答案】D)
【解析】此题可用排除法,A,B,C所述都是正确的,答案为D。
(21)【答案】B)
【解析】LIKE(<字符表达式1>,<字符表达式2>)函数的功能是比较两个字符串对应位置上的字符,若所有对应字符都匹配,返回逻辑真(.T.),<字符表达式1>中可以包含通配符*和?
。
*可与任何数目的字符相匹配,?
可以与任何单个字符相匹配。
(22)【答案】B)
【解析】各语句作用如下所示
SETDATETOYMD&&年月日格式为yy/mm/dd
SETCENTURYON&&设置四位数字年份
SETCENTURYTO19ROLLOVER10
&&年份参照值为10,如果数据的2位数字年份大于等于此值则所处的世纪为19
SETMARKTO"."&&设置日期分割符为西文句号
?
CTOD("49-05-01")&&CTOD()函数将字符型数据转化为日期型数据
(23)【答案】A)
【解析】每一个变量都有一个名字,可以通过变量名访问变量。
如果当前表中存在一个同名的字段变量,则在访问内存变量时,必须在变量名前加上前缀M.(或M->),否则系统将访问同名的字段变量。
(24)【答案】D)
【解析】设置为当前索引的命令是SETORDERTO索引名,注意此题中索引名为XM。
(25)【答案】C)
【解析】删除记录的命令是DELETEFOR表达式,VisualFoxPro中有通配符*和?
,*可与任何数目的字符相匹配,?
可以与任何单个字符相匹配。
(26)【答案】B)
【解析】运行查询的命令是DOQueryFile,QueryFile是查询文件名,注意此时必须给出查询文件的扩展名.qpr。
(27)【答案】B)
【解析】语句S=1与?
S是在ENDIF之后,所以,最后显示的S的值不受前面语句的影响,仍为1。
(28)【答案】C)
【解析】SCAN-ENDSCAN语句是扫描循环语句,LOOP语句的作用是跳出本次循环,该程序段实现的功能是显示第二条记录到第五条记录中,“名称”字段的值,左边第一个汉字为“电”,但右边第一个汉字不为“线”的记录,当执行到最后一次循环时,不论条件是否成立,程序会依次执行下去输出最后一条记录,因此,结果为选项C)。
(29)【答案】D)
【解析】TOPnExpr[PERCENT]短语用于显示前面的部分结果,TOP短语要与ORDERBY短语同时使用才有效,DESC表示降序排列,若省略,系统默认为升序。
(30)【答案】B)
【解析】利用GROUPBY子句进行分组计算查询,有WHERE子句时,GROUPBY子句一般放在其后,倘若没有,则跟在FROM子句之后,WHERE子句一般在分组前用于限定元组,分组后,用以限定分组一般用HAVING子句。
(31)【答案】A)
【解析】2005年1月1日后,应表示为签定日期>{ˆ2005-1-1},JION子句为普通联接(内部联接),应使用ON子句指定联接条件,WHERE子句在最后限定元组。
(32)【答案】C)
【解析】本题应使用嵌套查询,A,B的结果都为空,D也是错误的,因为,在SQL中,用“!
=”表示不等于。
(33)【答案】B)
【解析】谓词EXISTs用来检验在子查询中是否有结果返回,本题中内层查询引用了外层查询的表,所以也是内外层互相关嵌套查询。
C,D的错误之处是在WHERE和IN之间缺少“职工号”。
(34)【答案】C)
【解析】SQL从表中删除数据的命令格式如下:
DELETEFROM表名[WHERE条件]。
(35)【答案】A)
【解析】SQL的数据更新命令格式如下:
UPDATE表名SET字段名1=表达式1[,字段名2=表达式2]WHERE条件。
二、填空题
(1)【答案】【1】数据库系统
【解析】数据管理技术的发展过程分为人工管理,文件系统以及数据库系统三个阶段,数据独立性最高的阶段是数据库系统。
(2)【答案】【2】空间
【解析】算法的复杂度主要包括时间复杂度和空间复杂度。
(3)【答案】【3】驱动模块
【解析】驱动模块的作用是将测试数据传送给被测试的模块,并显示被测试模块所产生的结果。
(4)【答案】【4】32
【解析】对于深度为6的二叉树来说,第6层的结点数最多为26-1=32。
(5)【答案】【5】存储
【解析】循环队列是队列的一种顺序存储结构。
(6)【答案】【6】主关键字(候选关键字)
【解析】VisualFoxPro中利用主关键字或候选关键字来保证表中的记录惟一,即保证实体完整性。
(7)【答案】【7】备注
【解析】通用型字段用于标记电子表格,文档,图片等OLE对象(对象链接和嵌入),占4个字节。
(8)【答案】【8】EXIT
【解析】LOOP和EXIT子句在SCAN-ENDSCAN循环中同样适用,LOOP表示退出本次循环,而EXIT表示退出整个循环体,执行ENDSCAN后的语句。
(9)【答案】【9】DISTINCT
【解析】SQL语句中,DISTINCT表示选出的记录中不包括重复记录。
(10)【答案】【10】ColumnCount
【解析】表格控件的ColumnCount属性指定表格的列数,该属性在设计时可用,在运行时可读写。
(11)【答案】【11】Intocursor
【解析】Intocursor短语将查询结果存放到临时表中格式为:
select*from
cursorrname。
(12)【答案】【12】PRIMARYKEY
【解析】在CREATETABLE语句中用于建立主关键字(主索引)的短语是PRIMARYK
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 全国计算机等级考试二级Visual FoxPro数据库设计 全国 计算机等级考试 二级 Visual FoxPro 数据库 设计