Visual FoxPro考试篇 正确版

2018-11-11 20:38

1

Visual FoxPro考试篇

第1章 Visual FoxPro 6.0系统概述

1.2.1选择题

【例1】数据库(DB)、数据库系统(DBS)和数据库管理系统(DBMS)之间的关系是______。(2006年4月)

A.DB包含DBS和DBMS B.DBMS包含DB和DBS C.DBS包含DB和DBMS D.没有任何关系 【例2】Visual FoxPro DBMS是______。(2003年4月) A.操作系统的一部分 B.操作系统支持下的系统软件 C.一种编译程序 D.一种操作系统 【例3】在Visual FoxPro中?表?是指______。(2003年4月) A.报表 B.关系 C.表格 D.表单 【例4】在关系模型中,为了实现?关系中不允许出现相同的元组?的约束应使用______。 A.临时关键字 B.主关键字 C.外部关键字 D.索引关键字 【例5】从关系模式中指定若干个属性组成新的关系的运算称为______。(2004年9月) A.连接 B.投影 C.选择 D.排序 【例6】在下列4个选项中,不属于基本关系运算的是______。(2003年9月) A.连接 B.投影 C.选择 D.排序 【例7】操作对象只能是一个表的关系运算是是______。(2006年9月) A.连接和选择 B.连接和投影 C.选择和投影 D.自然连接和选择

【例8】在教师表中,如果要找出职称为?教授?的教师,所采用的关系运算是______。(2008年4月)

A.选择 B.投影 C.联接 D.自然联接

【例9】设有表示学生选课的三张表,学生S(学号,姓名,性别,年龄,身份证号),课程C(课号,课名),选课SC(学号,课号,成绩),则表SC的关键字(键或码)是______。(2008年4月)

A.课号,成绩 B.学号,成绩 C.学号,课号 D.学号,姓名,成绩

1.2.2 填空题

【例1】用二维表数据来表示实体之间联系的数据模型称为______。(2003年4月) 【例2】在关系模型中,把数据看成是二维表,每一个二维表称为一个______。(2006年4月)

【例3】在Visual FoxPro中,数据库文件的扩展名是______,数据表文件的扩展名是______。(2003年4月)

【例4】在关系表中,要求字段名______重复。(2008年4月)

【例5】人员基本信息一般包括:身份证号、姓名、性别、年龄等。其中可以作为主关键字的是______。(2009年9月)

1.3.1 选择题

1.数据库系统的核心是______。

2

A.数据模型 B.数据库管理系统 C.软件工具 D.数据库 2. 在一个关系中,能够唯一确定一个元组的属性或属性组合称为______。 A.索引码 B.关键字 C.域 D.排序码 3.关系模型中,关键字______。 A.可由多个任意属性组成

B.能由一个属性组成,其值能唯一标识该关系模式中任何一个元组

C.可由一个或多个属性组成,其值能唯一标识该关系模式中任何一个元组 D.以上都不是

4.数据库系统由数据库、______组成。

A.DBMS、应用程序、支持数据库运行的软、硬件环境和DBA B.DBMS和DBA

C.DBMS、应用程序和DBA

D.DBMS、应用程序、支持数据库运行的软件环境和DBA

5.Visual FoxPro 6.0是一种关系型数据库管理系统,所谓关系是指______。 A.各条记录中的数据彼此有一定的关系

B.一个数据库文件与另一个数据库文件之间有一定的关系 C.数据模型符合满足一定条件的二维表格形式 D.数据库中各个之间彼此有一定的关系

6.Visual FoxPro支持的两种工作方式是______。 A.交互操作方式和程序执行方式 B.命令方式和菜单工作方式 C.命令方式和程序方式 D.交互操作方式和菜单工作方式 7.退出Visual FoxPro的操作方法是______。

A.从?文件?菜单中选择?退出?选项 B.单击关闭窗口按钮 C.在命令执行QUIT命令 D.以上方法都可以 8.显示和隐藏命令窗口的操作是______。 A.单击?常用?工具栏上的?命令窗口?按钮 B.通过?窗口?菜单下的?命令窗口?选项来切换 C.直接按Ctrl+F2或Ctrl+F4组合键 D.以上方法都可以

9.以下关于工具栏的叙述,错误的是______。

A.可以创建用户自己的工具栏 B.可以修改系统提供的工具栏 C.可以删除用户创建的工具栏 D.可以删除系统提供的工具栏 10.在?选项?对话框的?文件位臵?选项卡中可以设臵______。 A.表单的默认大小 B.默认目录

C.日期和时间的显示格式 D.程序代码的颜色 11.要启动向导可以______。

A.打开新建对话框 B.单击工具栏上的?向导?图标按钮 C.从?工具?菜单中选择?向导? D.以上方法都可以

1.3.2 填空题

1.数据库应用系统是指系统开发人员利用数据库系统资源开发出来的,面向某一实际应用的______软件。

2.从关系中选择满足条件的元组的操作称为______。

3.从关系中选取某些属性形成一个新的关系的操作称为______。

3

4.对关系中找出满足选择条件的元组或属性,形成一个新的关系的操作称为______。 5.二维表中的列称为关系中的______。 6.二维表的行称为关系的______。

7.要定制Visual FoxPro的系统环境,应操作?工具?菜单中的______菜单项目。 8.在Visual FoxPro系统中,要设臵日期和时间的显示格式,应选择?选项?对话框中的______选项卡。

4

第2章 数据与数据运算

2.2.1 选择题

【例1】关于Visual FoxPro的变量,下面说法中正确的是______。(2003年9月) A.使用一个简单变量之前要先声明或定义 B.数组中各数组元素的数据类型可以不同

C.定义数组以后,系统为数组的每个数组元素赋予数值0 D.数组元素的下标下限是0

【例2】在下面的表达式中,运算结果为逻辑真的是______。(2003年9月) A.EMPTY(.NULL.) B.LIKE(\C.AT(\ D.EMPTY(SPACE(10)) 【例3】Visual FoxPro内存变量的数据类型不包括______。(2003年9月) A.数值型 B.货币型 C.备注型 D.逻辑型 【例4】在Visual FoxPro 中说明数组的命令是______。(2004年4月) A.DIMENSION和ARRAY B.DECLARE和ARRAY C.DIMENSION和DECLARE D.只有DIMENSION 【例5】有如下赋值语句,结果为?大家好?的表达式是______。(2004年4月) ?? a=″你好″ ?? b=″大家″

A.b+AT(a,1) B.b+RIGHT(a,1) C.b+ LEFT(a,3,4) D.b+RIGHT(a,2) 【例6】 设X=10, 语句 ?VARTYPE (\的输出结果是______。(2004年9月) A. N B.C C.10 D.X 【例7】表达式LEN(SPACE(0))的运算结果是______。(2004年9月) A. .NULL. B.1 C.0 D. \【例8】依次执行以下命令后的输出结果是______。(2005年9月) SET DATE TO YMD SET CENTURY ON

SET CENTURY TO 19 ROLLOVER 10 SET MARK TO \? CTOD(\A.49.05.01 B.1949.05.01 C.2049.05.01 D.出错 【例9】设X=\下列表达式结果为假的是______。(2006年4月) A.NOT (X==Y) AND (X$Y) B.NOT (X$Y) OR (X◇Y) C.NOT (X>=Y) D.NOT (X$Y)

解析:X==Y值为假,X$Y的值为真,X◇Y值为真,X>=Y值为假,故D选项为假。 答案:D 【例10】 在Visual FoxPro中, 对于字段值为空值(NULL)叙述正确的是 (2007年4月) A.空值等同于空字符串 B.空值表示字段还没有确定值 C.不支持字段值为空值 D.空值等同于数值0 【例11】命令?VARTYPE(TIME())结果是______。(2007年9月) A.C B.D C.T D.出错

5

【例12】命令?LEN(SPACE(3)-SPACE(2))的结果是______。(2007年9月) A.1 B.2 C.3 D.5 【例13】说明数组后,数组元素的初值是______。(2008年9月)

A.整数0 B.不定值 C.逻辑真 D.逻辑假 【例14】设a=?计算机等级考试?,结果为?考试?的表达式是______。(2008年9月) A.LEFT(a,4) B.RIGHT(a,4) C.LEFT(a,2) D.RIGHT(a,2) 【例15】语句LIST MEMORY LIKE a*能够显示的变量不包括______。(2009年9月) A. a B. a1 C. ab2 D. ba3

2.2.2 填空题

【例1】表达式STUFF(\的运算结果是______。(2003年9月) 【例2】 常量 .n.表示的是______型的数据。(2004年4月)

【例3】表示?1962年10月27日?的日期常量应该写为______。 (2004年9月) 【例4】表达式{^2005-1-3 10:0:0}-{^2005-10-3 9:0:0}的数据类型是______。(2006年4月)

【例5】在visual FoxPro中,将只能在建立它的模块中使用的内存变量称为______。(2006年4月)

【例6】? AT(?EN?,RIGHT(?STUDENT?,4))的执行结果是 _______。(2007年4月) 【例7】LEFT(\子串\的计算结果是_______。(2008年9月)

2.3.1 选择题

1.在下面的Visual FoxPro表达式中,不正确的是______。 A.{^2001-05-01 10:10:10AM}-10 B.{^2001-05-01}-DATE()

C.{^2001-05-01 10:10:10AM}+DATE() D.{^2001-05-01 10:10:10AM}+1000

2.下列表达式中结果为?计算机等级考试?的表达式为______。 A.″计算机″|″等级考试″; B.″计算机″&″等级考试″ C. ″计算机″ and ″等级考试″ D.″计算机″+″等级考试″

3.关系运算符$用来判断一个字符串表达式是否______另一个字符串表达式。 A.等于 B.完全等于 C.不等于 D.包含于 4. 以下日期正确的是______。 A.{″^2001-05-25″} B.{′^2001-05-25′} C.{^2001-05-25} D.{[^2001-05-25]} 5. 设N=886,M=345,K=″M+N″,表达式1+&K的值是______。 A.1232 B. 数据类型不匹配 C. 1+M+N D. 346

6.Visual FoxPro的表达式中不仅允许有常量、变量,而且还允许有______。 A.过程 B. 函数 C. 子程序 D. 主程序 7. 计算结果不是字符串″Teacher″的语句是______。

A. AT(″MyTecaher″,3,7 ) B. SUBSTR(″MyTecaher″,3,7 ) C. RIGHT(″MyTecaher″,7 ) D. LEFT(″Tecaher″,7 )

8. 如果一个运算表达式中包含有逻辑运算、关系运算和算术运算,并且其中未用圆括号规定这些运算的先后顺序,那么这样的综合型表达式的运算顺序是______。

A.逻辑->算术->关系 B.关系->算术->逻辑 C. 算术->逻辑->关系 D. 算术->关系->逻辑

6

9.已知D1和D2为日期型变量,下列4个表达式中非法的是______。 A.D1-D2 B. D1+D2 C. D1+28 D. D1-36 10. 下列4个表达式中,错误的是______。 A.″姓名: ″+姓名 B. ″性别: ″+性别 C. ″工资: ″-工资 D. 姓名: ″是工程题″ 11. 函数INT(数值表达式)的功能是______。 A.按四舍五入取数值表达式值的整数部分 B. 返回数值表达式值的整数部分 C. 返回不大于数值表达式的最大整数 D. 返回不小于数值表达式值的最小整数

12.下列4个表达式中,运算结果为数值的是______。

A.″9988″-″1255″ B. 200+800=1000 C. CTOD([11/22/01])-20 D. LEN(SPACE(3))-1

13.设有变量sr=″2000年上半年全国计算机等级考试″,能够显示″2000年上半年计算机等级考试″的命令是______。

A.? sr″全国″

B.? SUBSTR(sr,1,8)+SUBSTR(sr,11,17) C.? STR(sr,1,12)+STR(sr,17,14)

D.? SUBSTR(sr,1,12)+SUBSTR(sr,17,14)

14. 设有变量pi=3.1415926,执行命令?ROUND(pi,3)的显示结果为______。 A.3.141 B.3.142 C.3.140 D.3.000 15. 6E-3是一个______。

A.内存变量 B.字符常量 C.数值常量 D.非法表达式 16. 以下赋值语句正确的是______。

A.STORE 8 TO X,Y B. STORE 8,9 TO X,Y C. X=8,Y=9 D. X,Y=8 17.下列选项中不能够返回逻辑值的是______。

A.EOF() B. BOF() C.RECNO() D.FOUND() 18.设有一字段变量″姓名″,目前值为″王华″,又有一内存变量″姓名″,其值为″李敏″,则命令?姓名显示的结果应为______。

A.王华 B. 李敏 C. ″王华″ D. ″李敏″

19.设字段变量″工作日期″为日期型,″工资″为数值型,则要想表达″工龄大于30年,工资高于1500、低于1800元″这一命题,其表达式是______。

A.工龄>30.AND.工资>1500.AND.工资<1800 B. 工龄>30.AND.工资>1500.OR.工资<1800

C. INT((DATE()-工作日期)/365)>30.AND.工资>1500.AND.工资<1800 D. INT((DATE()-工作日期)/365)>30.AND.(工资>1500.OR.工资<1800) 20. 下列说法中正确的是______。

A.若函数不带参数,则调用时函数名后面的圆括号可以省略 B. 函数若有多个参数,则各参数间应用空格隔开

C. 调用函数时,参数的类型、个数和顺序不一定要一致 D. 调用函数时,函数名后的圆括号不论有无参数都不能省略

21.设X=″ABC″,Y=″ABCD″,则下列表达式中值为.T.的是______。 A.X=Y B. X==Y C. X$Y D. AT(X,Y)=0

7

22.逻辑型数据的取值不能是______。 A..T.或.F. B. .Y.或.N. C. .T.或.F.或.Y.或.N. D. T或F

23. 设字段变量job是字符型的,pay是数值型的,能够表达?job是处长且pay不大于1000元?的表达式是______。

A.job=处长.AND.pay>1000 B. job=″处长″.AND.pay<1000 C. job=″处长″.AND.pay<=1000 D. job=处长.AND.pay<=1000 24.当前记录号可用函数______求得 A.EOF() B. BOF() C. RECC() D. RECNO() 25. 假定M=[22+28],则执行命令?M后屏幕将显示______。 A.50 B. 22+28 C.[22+28] D. 50.00 26.下列表达式中,是逻辑型常量的是 ______。 A.Y B. N C. NOT D. .F. 27.下列选项中不是常量的是______。 A.abc B. ″abc″ C. 1.4E+2 D. {^1999/12/31} 28.变量名中不能包括 ______。 A.数字 B. 字母 C. 汉字 D. 空格 29.下列选项中得不到字符型数据的是______。 A.DTOC(DATE()) B. DTOC(DATE(),1) C. STR(123.567) D. AT(″1″,STR(1321)) 30. {^1999/05/01}+31的值应为 ______。 A.{^1999/06/01} B.{^1999/05/31} C. {^1999/06/02} D.{^1999/04/02}

31.关于Visual FoxPro中的运算符的优先级,下列选项中不正确的是______。 A.算术运算符的优先级高于其它类型运算符 B. 字符串运算符″+″和″-″优先级相等 C. 逻辑运算符的优先级高于关系运算符 D. 所有关系运算符的优先级都相等

32.下列选项中是日期型常量的是______。

A.{″1999/12/31″} B. {^1999/12/31} C. 1999/12/31 D. CTOD(1999/12/31)

33. 命令″DIME array(5,5) ″执行后,array(3,3)的值为______。 A.0 B. 1 C. .T. D. .F.

34. 设当前数据库文件中含有字段NAME,系统中有一内存变量的名称也为NAME,下面命令?NAME显示的结果是______。

A.内存变量NAME的值 B. 字段变量NAME的值 C. 与该命令之前的状态有关 D. 错误信息 35. 职工数据库中有D型字段″出生日期″,要计算职工的整数实足年龄,应当使用命令______。

A.? DATE()-出生日期/365 B. ?(DATE()-出生日期)/365

C. ? INT((DATE()-出生日期)/365) D. ? ROUND((DATE()-出生日期)/365) 36. 关于″? ″和″?? ″,下列说法中错误的是 ______。 A.? 和??只能输出多个同类型的表达式的值 B. ? 从当前光标所在行的下一行第0列开始显示

8

C. ??从当前光标处开始显示 D. ?和??后可以没有表达式

37.DTOC({^1998/09/28})的值应为______。

A.1998年9月28日 B. 1998/09/28

C. ″1998/09/28″ D. ″1998-09-28″ 38. 下列数据中,不是常量的是 ______。 A.NAME B. ″年龄″ C. ″91/01/02″ D. .T.

2.3.2 填空题

1.命令?ROUND(337.2007,3)的执行结果是______。

2.在Visual FoxPro中,若有:x=5,y=6,?(x=y).And.(x

4.Visual FoxPro中逻辑运算符优先级最高的是______。

5.设Visual FoxPro的当前状态己设臵为SET EXACT OFF,下面命令? ″你好吗? ″=[你好]的显示结果是______。

6. 在Visual FoxPro中,表示时间2009年3月3 日的常量应写为______。 7.Visual FoxPro中,数值型常量是由数字、______和正负号构成的。 8.Visual FoxPro中,用于统计数据库表中的记录个数的函数是______。

9.释放除了以d字母开头的且变量名仅有三个字符的所有内存变量,应使用命令RELEASE ALL ______ d??。

10. ? LEN(TRIM(″国庆″+″假期□□″)) 的执行结果是______。 11. ? CTOD(″99-01-01″)-365的执行结果是______。

12. ? LEN(″计算机″)

16. 常量{^2009-10-01,15:30:30}的数据类型是______。 17. Visual FoxPro中的数组元素下标从______开始。 18. ? ROUND(123.456,2) 的执行结果是______。 19. ? ROUND(123.456,-2) 的执行结果是______。

20. 设变量n1=5,n2=10,n3=15,ml=20,m2=25,将所有以字母n开头的变量存入内存变量文件myfile.mem,应使用命令SAVE TO myfile ALL ______ n*。

21. 显示当前内存变量的命令为______。

22. ? REPLICATE(\$\的执行结果是______。 23. 命令? TYPE(″10/25/01″)的输出值是______。

24. 如果一个表达式中包含算术运算、关系运算、逻辑运算和函数时,则优先级最低的是______。

9

第3章 数据库与数据表

3.2典型试题与解析

3.2.1 选择题

【例1】在 Visual FoxPro中以下叙述正确的是______。 (2006年9月) A.关系也被称作表单 B.数据库文件不存储用户数据 C.表文件的扩展名是.DBC D.多个表存储在一个物理文件中 【例2】扩展名为DBF的文件是______。(2004年9月) A.表文件 B.表单文件 C.数据库文件 D.项目文件 【例3】在Visual FoxPro中字段的数据类型不可以指定为______。(2004年4月) A.日期型 B.时间型 C.通用型 D.备注型

【例4】在Visual FoxPro中,下列关于表的叙述正确的是______(2005年4月) A.在数据库表和自由表中,都能给字段定义有效性规则和默认值 B.在自由表中,能给表中的字段定义有效性规则和默认值 C.在数据库表中,能给表中的字段定义有效性规则和默认值

D.在数据库表和自由表中,都不能给字段定义有效性规则和默认值

【例5】下面有关数据库表和自由表的叙述中,错误的是______。(2007年9月) A.数据库表和自由表都可以用表设计器来建立 B.数据库表和自由表都支持表间联系和参照完整性 C.自由表可以添加到数据库中成为数据库表 D.数据库表可以从数据库中移出成为自由表

【例6】数据库表的字段可以定义默认值,默认值是______。 (2004年4月) A. 逻辑表达式 B.字符表达式 ??C.数值表达式 D.前三种都可能 【例7】数据库的字段可以定义规则,规则是______。 (2004年4月) A.逻辑表达式

B.字符表达式 ??C.数值表达式 D.前三种说法都不对

【例8】在Visual FoxPro中,数据库表的字段或记录的有效性规则的设臵可以在

______。( 2007年4月)

A.项目管理器中进行 B.数据库设计器中进行 C.表设计器中进行 D.表单设计器中进行 【例9】使用索引的主要目的是______。(2009年9月)

A.提高查询速度 B.节省存储空间 C.防止数据丢失 D.方便管理

【例10】在指定字段或表达式中不允许出现重复值的索引是______。(2005年4月) A.惟一索引 B.惟一索引和候选索引 C.惟一索引和主索引 D.主索引和候选索引

【例11】在Visual FoxPro中,下面关于索引的正确描述是______。( 2007年4月) A.当数据表建立索引以后,表中的记录的物理顺序将被改变 B.索引的数据将与表的数据存储在一个物理文件中

C.建立索引是创建一个索引文件,该文件包含指向表记录的指针 D.使用索引可以加快对表的更新操作

【例12】在表设计器的?字段?选项卡中可以创建的索引是______。(2004年9月) A. 惟一索引 B.候选索引 C.主索引 D.普通索引

10

【例13】在Visual FoxPro中,若所建立索引的字段值不允许重复,并且一个表中只能创建一个,这种索引应该是______。(2009年3月)

A.主索引 B.唯一索引 C.候选索引 D.普通索引

【例14】通过指定字段的数据类型和宽度来限制该字段的取值范围,这属于数据完整性中______。(2003年9月)

A.参照完整性 B.实体完整性 C.域完整性 D.字段完整性 【例15】在创建数据库表结构时,给该表指定了主索引,这属于数据完整性中的______。(2005年4月)

A.参照完整性 B.实体完整性 C.域完整性 D.用户定义完整性

【例16】为了设臵两个表之间的数据参照完整性,要求这两个表是______。(2003年9月)

A.同一个数据库中的两个表 B.两个自由表 C.一个自由表和一个数据库表 D.没有限制 【例17】如果指定参照完整性的删除规则为?级联?,则当删除父表中的记录时______。 (2004年4月)

A.系统自动备份父表中被删除记录到一个新表中 B.若子表中有相关记录,则禁止删除父表中记录 C.会自动删除子表中所有相关记录

D.不作参照完整性检查,删除父表记录与子表无关

【例18】设有两个数据库表,父表和子表之间是一对多的联系,为控制子表和父表的关联,可以设臵?参照完整性规则?,为此要求这两个表______。(2005年4月)

A.在父表连接字段上建立普通索引,在子表连接字段上建立主索引 B.在父表连接字段上建立主索引,在子表连接字段上建立普通索引

C.在父表连接字段上不需要建立任何索引,在子表连接字段上建立普通索引 D.在父表和子表的连接字段上都要建立主索引 【例19】Visual FoxPro的?参照完整性?中?插入规则?包括的选项是______。(2005年4月)

A.级联和忽略 B.级联和删除 C.级联和限制 D.限制和忽略

【例20】参照完整性规则的更新规则中?级联?的含义是______。(2008年4月) A.更新父表中连接字段值时,用新的连接字段自动修改子表中的所有相关记录 B.若子表中有与父表相关的记录,则禁止修改父表中连接字段值 C.父表中的连接字段值可以随意更新,不会影响子表中的记录 D.父表中的连接字段值在任何情况下都不允许更新 【例21】在Visual FoxPro 中,有关参照完整性的删除规则正确的描述是______。(2009年3月)

A.如果删除规则选择的是?限制?,则当用户删除父表中的记录时,系统将自动删除子表中的所有相关记录

B.如果删除规则选择的是?级联?,则当用户删除父表中的记录时,系统将禁止删除与子表相关的父表中的记录

C.如果删除规则选择的是?忽略?,则当用户删除父表中的记录时,系统不负责检查子表中是否有相关记录

D.上面三种说法都不对

【例22】在Visual FoxPro中,假定数据库表S ( 学号,姓名,性别,年龄 ) 和 SC(学号,课程号,成绩) 之间使用?学号?建立了表之间的永久联系,在参照完整性的更新规则、删除规则和插入规则中设臵了?限制?,如果表S所有的记录在表SC中都有相关联的记录,则______。(2007年4月)

11

A.允许修改表S中的学号字段值 B.允许删除表S中的记录

C.不允许修改表S中的学号字段值 D.不允许在表S中增加新的记录 【例23】打开数据库abc的正确命令是______。(2005年4月) A.OPEN DATABASE abc B.USE abc C.USE DATABASE abc D.OPEN abc

【例24】MODIFY STRUCTURE命令的功能是______。(2008年4月) A.修改记录值 B.修改表结构 C.修改数据库结构 D.修改数据库或表结构 【例25】在数据库中建立表的命令是______。(2009年9月) A. CREATE B. CREATE DATABASE C. CREATE QUERY D. CREATE FORM

【例26】有关ZAP命令的描述,正确的是______。(2007年9月) A.ZAP命令只能删除当前表的当前记录

B.ZAP命令只能删除当前表的带有删除标记的记录 C.ZAP命令能删除当前表的全部记录 D.ZAP命令能删除表的结构和全部记录

【例27】要为当前表所有性别为?女?的职工增加100元工资,应使用命令______。(2008年4月)

A.REPLACE ALL 工资 WITH 工资+100

B.REPLACE 工资 WITH 工资+100 FOR 性别=\女\C.REPLACE ALL 工资 WITH 工资+100

D.CHANGE ALL 工资 WITH 工资+100 FOR 性别=\女\

【例28】用命令?INDEX ON 姓名 TAG index_name?建立索引,其索引类型是______。(2003年9月)

A.主索引 B.候选索引 C.普通索引 D.惟一索引

【例29】执行INDEX ON 姓名 TAG index_name命令建立索引后,下列叙述错误的是______。(2003年9月)

A.此命令建立的索引是当前有效索引

B.此命令所建立的索引将保存在.idx文件中 C.表中记录按索引表达式升序排序

D.此命令的索引表达式是?姓名?,索引名是?index_name?

【例30】已知表中有字符型字段职称和性别,要建立一个索引,要求首先按职称排序、职称相同时再按性别排序,正确的命令是______。(2007年9月)

A.INDEX ON 职称+性别 TO ttt B.INDEX ON 性别+职称TO ttt C.INDEX ON职称,性别TO ttt D.INDEX ON 性别,职称TO ttt

【例31】打开表并设臵当前有效索引(相关索引已建立)的正确命令是______。(2003年9月)

A.ORDER student IN 2 INDEX 学号 B.USE student IN 2 ORDER 学号 C.INDEX 学号 ORDER student D.USE student IN 2

【例32】有一学生表文件,且通过表设计器已经为该表建立了若干普通索引。其中一个索引的索引表达式为姓名字段,索引名为XM。现假设学生表已经打开,且处于当前工作区中,那么可以将上述索引设臵为当前索引的命令是______。(2005年9月)

A.SET INDEX TO 姓名 B.SET INDEX TO XM C.SET ORDER TO 姓名 D.SET ORDER TO XM

12

【例33】在Visual FoxPro中,使用LOCATE FOR<条件>命令按条件查找记录,当查找到满足条件的第一条记录后,如果还需要查找下一条满足条件的记录,应使用______。(2005年4月)

A.再次使用LOCATE FOR<条件>命令 B.SKIP命令 C.CONTINUE命令 D.GO命令

【例34】在Visual FoxPro 中,每一个工作区中最多能打开数据库表的数量是______。(2009年3月)

A.1个 B.2个 C.任意个,根据内存资源而确定 D.35535个

【例35】命令SELECT 0的功能是______。(2007年9月) A.选择编号最小的未使用工作区 B.选择0号工作区 C.关闭当前工作区的表 D.选择当前工作区 【例36】执行USE sc IN 0命令的结果是______。(2009年3月)

A.选择0号工作区打开sc表 B.选择空闲的最小号的工作区打开sc表 C.选择第1号工作区打开sc D.显示出错信息

【例37】两表之间?临时性?联系称为?关联?,在两个表之间的关联已经建立的情况下,有关?关联?的正确叙述是______。(2003年9月)

A.建立关联的两个表一定在同一个数据库中

B.两表之间?临时性?联系是建立在两表之间?永久性?联系基础之上的 C.当父表记录指针移动时,子表记录指针按一定的规则跟随移动 D.当关闭父表时,子表自动被关闭

3.2.2 填空题

【例1】在 Visual FoxPro 中,所谓自由表就是那些不属于任何______的表。 (2006年9月)

【例2】在定义字段有效性规则时,在规则框中输入的表达式类型是______。(2006年4月)

【例3】在Visual FoxPro中,可以在表设计器中为字段设臵默认值的表是______ 。(2005年4月)

【例4】在Visual FoxPro中,建立索引的作用之一是提高______速度。(2003年9月) 【例5】在Visual FoxPro中,数据库表中不允许有重复记录是通过指定______来实现的。(2005年9月)

【例6】每个数据库表可以建立多个索引,但是______索引只能建立1个。(2008年9月)

【例7】在Visual FoxPro中,通过建立数据库表的主索引可以实现数据的 ______ 完整性。(2007年4月)

【例8】使用数据库设计器为两个表建立联系,首先应在父表中建立______索引,在子表中建立______索引。(2004年4月)

【例9】当删除父表中的记录时,若子表中的所有相关记录也能自动删除,则相应的参照完整性的删除规则为______。(2004年9月)

【例10】在Visual FoxPro中的?参照完整性?中,?插入规则?包括的选择是?限制?和______ 。 (2009年9月)

【例11】在Visual FoxPro文件中,CREATE DATABASE命令创建一个扩展名为______的数据库(2003年9月)

13

【例12】将数据库表变为自由表的命令是_____TABLE。(2004年9月) 【例13】在Visual FoxPro 中修改表结构的非SQL命令是______。(2007年9月) 【例14】不带条件的 DELETE 命令(非 SQL 命令)将删除指定表的______记录。 (2006年9月)

【例15】Visual FoxPro中,在当前打开的表中物理删除带有删除标记记录的命令是______。(2008年4月)

【例16】在Visual FoxPro中,设有一个学生表STUDENT,其中有学号、姓名、年龄、性别等字段,用户可以用命令? ______ 年龄 WITH 年龄+1?将表中所有学生的年龄增加一岁。(2009年3月)

【例17】在Visual FoxPro中,使用LOCATE ALL 命令按条件对表中的记录进行查找,若查不到记录,函数EOF( )的返回值应是______。 (2007年9月)

【例18】在Visual FoxPro中选择一个没有使用的、编号最小的工作区的命令是______。(2003年9月)

3.3.1 选择题

1.可以链接或嵌入OLE对象的字段类型是______。 A.备注型字段 B.字符型字段 C.任何类型字段 D.通用型字段 2.在Visual FoxPro中,下列各项数据类型在数据表中宽度相等的是______。 A.日期型和逻辑型 B.日期型和通用型号 C.逻辑型和备注型 D.备注型和通用型 3.以下关于主索引和侯选索引的叙述正确的是______。 A.主索引和侯选索引都能保证表记录的惟一性

B.主索引和侯选索引都可以建立在数据库表和自由表上 C.主索引可以保证表记录的惟一性,而侯选索引不能 D.主索引和侯选索引是相同的概念

4.某数据表中定义了3个备注型字段和2个通用型字段,则相应的备注型文件的个数是______。

A.0 B.1 C.2 D.不确定

5.在创建数据库表结构时,为该表中一些字段建立普通索引,其目的是______。 A.改变表中记录的物理顺序 B.为了对表进行实体完整性的约束 C.加快数据库表的更新速度 D.加快数据库表的查询速度 6.用命令?INDEX ON 姓名 TAG index_name UNIQUE?建立索引,其索引类型是______。 A.主索引 B.候选索引 C.普通索引 D.惟一索引

7.在Visual FoxPro中,使用LOCATE ALL FOR <条件>命令查找记录,通过下面______来判断找到满足条件的记录。

A.FOUND()函数返回.F.值 B.BOF()函数返回.T.值 C.EOF()函数返回.T.值 D.EOF()函数返回.F.值

8.某数据库文件有字符型、数值型和逻辑型三个字段,其中字符型字段宽度为5,数值型字段宽度为6,小数位为2,库文件中共有100条记录,则全部记录需要占用的存储字节数目是______。

A.1100 B.1200 C.1300 D.1400

9.某数值型字段的宽度为6,小数位为2,则该字段所能存放的最小数值是______。 A.0 B.-999.99 C.-99.99 D.-9999.99 10.如果要在当前表中新增一个字段,应使用______命令。 A.MODIFY STRUCTURE B.APPEND C.INSERT D.EDIT

14

11.下列字段名中不合法的是______。 A.计算机 B.123abc C.abc_2 D.student 12.要存储员工上下班打卡的日期和时间,应采用______字段。 A.字符型 B.日期型 C.日期时间型 D.备注型 13.Visual FoxPro中的参照完整性包括______。 A.更新规则 B.删除规则 C.插入规则 D.以上答案均正确 14.Visual FoxPro中能够进行条件定位的命令是______。 A.SKIP B.GO C.LOCATE D.SEEK

15.Visual FoxPro中设臵参照完整性时,要设臵成:当更改父表中的主关键字段或候选关键字段时,自动更改所有相关子表记录中的对应值,应先择______。

A.忽略 B.级联 C.限制 D.忽略或限制

16.若当前数据表共有10条记录,且无索引文件处于打开状态,执行命令GO 5后接着执行命令INSERT BLANK BEFORE,则此时记录指针指向第______条记录。

A.4 B.5 C.6 D.11

17.在Visual FoxPro中,以只读方式打开数据库文件的选项是______。 A.EXCLUSIVE B.SHARED C.NOUPDATE D.VALIDATE 18.对数据表的结构进行操作,是在______环境下完成的。 A.表设计器 B.表向导 C.表浏览器 D.表编辑器

19.使用SEEK命令搜索表中出生日期为01/23/1996的记录,应执行______命令。 A.SEEK {^1996/01/23} B.SEEK {01/23/96} C.SEEK {96/01/23} D.SEEK {01/23/1996}

20.哪一种索引文件会随着表的打开而自动打开,随着表的关闭而自动关闭______。 A.结构复合索引文件 B.独立复合索引文件 C.单索引文件 D.以上都是

21.设表中有2条记录,当BOF()的返回值为.T.时,其记录号为______。 A.0 B.1 C.2 D..T. 22.使用INDEX命令不能为数据表创建______。 A.普通索引 B.候选索引 C.主索引 D.唯一索引 23.使用INDEX命令创建候选索引时应选参数______。 A.ASCENDING B.DESCENDING C.CANDIDATE D.UNIQUE

24.一数据表中的?婚否?字段为逻辑型,要显示所有已婚人的信息,应执行命令______。 A.LIST FOR 婚否 B.LIST FOR 婚否=\真\C.LIST FOR 婚否=\已婚\D.LIST 婚否

25.学生关系中有姓名、性别、出生日期等字段,要显示所有1985年出生的学生名单,应使用的命令是______。

A.LIST 姓名 FOR 出生日期=1985 B.LIST 姓名 FOR出生日期=\″ C.LIST 姓名 FOR YEAR(出生日期)=1985 D.LIST 姓名 FOR YEAR(\出生日期″)=1985

26.要为当前所有学生的年龄增加2岁,应输入的命令是______。 A.CHANGE ALL 年龄 WITH 年龄+2 B.CHANGE ALL 年龄+2 WITH 年龄 C.REPLACE ALL 年龄 WITH 年龄+2 D.REPLACE ALL年龄+2 WITH 年龄 27.在建立惟一索引出现重复字段值时,只存储重复出现的______记录。 A.第一个 B.最后一个 C.全部 D.几个

15

28.Visual FoxPro表结构中的逻辑型、通用型和日期型字段的宽度分别为______。 A.1、4、8 B.4、4、10 C.1、10、8 D.2、8、8

29.在Visual FoxPro的数据工作期窗口,使用SET RELATION命令可以建立两个表之间的关联,这种关联是______。

A.永久性关联 B.永久性关联或临时性关联 C.临时性关联 D.永久性关联和临时性关联 30.在Visual FoxPro中,数据库表字段名最长为______个字符。 A.10 B.128 C.130 D.156

3.3.2 填空题

1.建立表之间临时关系的命令是______。

2.在表的尾部增加一条空白记录的命令是______。

3. Visual FoxPro中不允许在主关键字字段中有重复值或______。 4. 数据库文件是由.DBC、.DCT和______三个文件所构成。

5.当前工作区是5,要使2号工作区为当前工作区,应使用命令______。

6. ?参照完整性生成器?对话框中的?插入规则?选项卡用于指定在______中插入新记录或更新已存在的记录时所用的规则。

7.?参照完整性生成器?对话框中的?删除规则?选项卡用于指定删除______中的记录时所用的规则。

8. 将自由表加到活动数据库中使用命令______。 9. 在Visual FoxPro中,指定从当前记录开始,直到表文件的最后一条记录为止的操作的范围字句是______。

10. 在Visual FoxPro中,自由表字段名最长为______个字符。

11. 当前指针在3号记录,要在当前表中第3条记录和第4条记录之间插入一条新记录,可以输入______命令。

12. 关联是指使不同工作区的记录指针建立起一种______的联动关系,当父表的记录指针移动时,子表的记录指针也随之移动。

13.结构复合索引文件的主名与表的主名相同,它随_____的打开而打开,在删除记录时会自动维护。

14. 利用LOCATE命令查找到满足条件的第1条记录后,连续执行______命令即可找到满足条件的其他记录。

15. 使用INDEX命令不能创建______索引。

16. 数据表共有10条记录,当BOF()为真时,记录号是______。 17. 自由表的索引类型可以有普通索引、惟一索引和______索引。 18. 一个数据表有8条记录,当EOF()为真时,则当前记录号为______。

第4章 SQL关系数据库查询语言

4.2典型试题与解析

4.2.1 选择题

以下【例1】~【例5】题使用如下三个表:

部门.DBF:部门号C(8),部门名C(12),负责人C(6),电话C(16)

16

职工.DBF:部门号C(8),职工号C(10),姓名C(8),性别C(2),出生日期D

工资.DBF:职工号C(10),基本工资N(8,2),津贴N(8,2),奖金N(8,2),扣除N(8,2) 【例1】查询职工实发工资的正确命令是____。(2004年4月)

A. SELECT 姓名,(基本工资+津贴+奖金-扣除) AS 实发工资 FROM 工资 B. SELECT 姓名,(基本工资+津贴+奖金-扣除) AS 实发工资 FROM 工资; WHERE 职工.职工号=工资.职工号

C. SELECT 姓名,(基本工资+津贴+奖金-扣除) AS 实发工资FROM 工资,职工; WHERE 职工.职工号=工资.职工号

D. SELECT 姓名,(基本工资+津贴+奖金-扣除) AS 实发工资; FROM 工资 JOIN 职工 WHERE 职工.职工号=工资.职工号

【例2】查询1962年10月27日出生的职工信息的正确命令是____。(2004年4月) A. SELECT * FROM 职工 WHERE 出生日期={^1962-10-27} B. SELECT * FROM 职工 WHERE 出生日期=1962-10-27 C. SELECT * FROM 职工 WHERE 出生日期=\D. SELECT * FROM 职工 WHERE 出生日期=(\

【例3】查询每个部门年龄最长者的信息,要求得到的信息包括部门名和最长者的出生日期。正确的命令是____。(2004年4月)

A. SELECT 部门名,MIN(出生日期) FROM 部门 JOIN 职工; ON 部门.部门号=职工.部门号 GROUP BY 部门名

B. SELECT 部门名,MAX(出生日期) FROM 部门 JOIN 职工; ON 部门.部门号=职工.部门号 GROUP BY 部门名

C. SELECT 部门名,MIN(出生日期) FROM 部门 JOIN 职工; WHERE 部门.部门号=职工.部门号 GROUP BY 部门名 D. SELECT 部门名,MAX(出生日期) FROM 部门 JOIN 职工; WHERE 部门.部门号=职工.部门号 GROUP BY 部门名

【例4】查询有10名以上(含10名)职工的部门信息(部门名和职工人数),并按职工人数降序排列。正确的命令是____。(2004年4月)

A. SELECT 部门名,COUNT(职工号) AS 职工人数 FROM 部门,职工; WHERE 部门.部门号=职工.部门号;

GROUP BY 部门名 HAVING COUNT(*)>=10 ORDER BY COUNT(职工号) ASC B. SELECT 部门名,COUNT(职工号) AS 职工人数 FROM 部门,职工; WHERE 部门.部门号=职工.部门号;

GROUP BY 部门名 HAVING COUNT(*)>=10 ORDER BY COUNT(职工号) DESC C. SELECT 部门名,COUNT(职工号) AS 职工人数 FROM 部门,职工; WHERE 部门.部门号=职工.部门号;

GROUP BY 部门名 HAVING COUNT(*)>=10 ORDER BY 职工人数 ASC D. SELECT 部门名,COUNT(职工号) AS 职工人数 FROM 部门,职工; WHERE 部门.部门号=职工.部门号;

GROUP BY 部门名 HAVING COUNT(*)>=10 ORDER BY 职工人数 DESC

【例5】查询所有目前年龄在35岁以上(不含35岁)的职工信息(姓名、性别和年龄),正确的命令是____。(2004年4月)

A. SELECT 姓名,性别,YEAR(DATE())-YEAR(出生日期) 年龄; FROM 职工 WHERE 年龄>35

B. SELECT 姓名,性别,YEAR(DATE())-YEAR(出生日期) 年龄;

17

FROM 职工 WHERE YEAR(出生日期)>35

C. SELECT 姓名,性别,YEAR(DATE())-YEAR(出生日期) 年龄; FROM 职工 WHERE YEAR(DATE())-YEAR(出生日期)>35

D. SELECT 姓名,性别,年龄=YEAR(DATE())-YEAR(出生日期); FROM 职工 WHERE YEAR(DATE())-YEAR(出生日期)>35 以下【例6】~【例14】题使用如下两个表:(2006年9月)

“歌手”表 “评分”表 歌手号1001200130014001…姓名王蓉许巍周杰伦林俊杰歌手号1001200130014001…分数9.89.69.79.8评委号101102103104 【例6】为?歌手?表增加一个字段?最后得分?的 SQL 语句是____。(2006年9月) A.ALTER TABLE 歌手 ADD 最后得分 F(6,2) B.ALTER DBF 歌手 ADD 最后得分 F 6,2 C.CHANGE TABLE 歌手 ADD 最后得分 F(6,2) D.CHANGE TABLE 学院 INSERT 最后得分 F 6,2

【例7】插入一条记录到?评分?表中,歌手号、分数和评委号分别是?1001?、9.9 和?105?,正确的 SQL 语句是____。(2006年9月)

A.INSERT VALUES (\评分 (歌手号,分数,评委号) B.INSERT TO 评分 (歌手号,分数,评委号) VALUES (\C.INSERT INTO 评分 (歌手号,分数,评委号) VALUES (\D.INSERT VALUES (\评分 (歌手号,分数,评委号)

【例8】假设每个歌手的?最后得分?的计算方法是,去掉一个最高分和一个最低分,取剩下分数的平均分。根据?评分?表求每个歌手的?最后得分?并存储于表 TEMP 中。表 TEMP中有两个字段:?歌手号?和?最后得分?,并且按最后得分降序排列,生成表 TEMP 的 SQL语句是____。(2006年9月)

A.SELECT 歌手号,(COUNT(分数)-MAX(分数)-MIN(分数))/(SUM(*)-2) 最后得分; FROM 评分 INTO DBF TEMP GROUP BY 歌手号 ORDER BY 最后得分DESC

B.SELECT 歌手号,(COUNT(分数)-MAX(分数)-MIN(分数))/(SUM(*)-2) 最后得分; FROM 评分 INTO DBF TEMP GROUP BY 评委号 ORDER BY 最后得分DESC

C.SELECT 歌手号,(SUM(分数)-MAX(分数)-MIN(分数))/(COUNT(*)-2) 最后得分; FROM 评分 INTO DBF TEMP GROUP BY 评委号 ORDER BY 最后得分DESC

D.SELECT 歌手号,(SUM(分数)-MAX(分数)-MIN(分数))/(COUNT(*)-2) 最后得分; FROM 评分 INTO DBF TEMP GROUP BY歌手号ORDER BY最后得分DESC

【例9】与?SELECT * FROM 歌手 WHERE NOT(最后得分>9.00 OR 最后得分<8.00)?等价的语句是____。(2006年9月)

A.SELECT * FROM 歌手 WHERE 最后得分 BETWEEN 9.00 AND 8.00

B.SELECT * FROM 歌手 WHERE 最后得分>=8.00 AND 最后得分<=9.00

18

C.SELECT * FROM 歌手 WHERE 最后得分>9.00 OR 最后得分<8.00 D.SELECT * FROM 歌手 WHERE 最后得分<=8.00 AND 最后得分>=9.00 【例10】为?评分?表的?分数?字段添加有效性规则:?分数必须大于等于 0 并且小于等于10?,正确的 SQL 语句是____。(2006年9月)

A.CHANGE TABLE 评分 ALTER 分数 SET CHECK 分数>=0 AND 分数<=10 B.ALTER TABLE 评分 ALTER 分数 SET CHECK 分数>=0 AND 分数<=10 C.ALTER TABLE 评分 ALTER 分数 CHECK 分数>=0 AND 分数<=10 D.CHANGE TABLE 评分 ALTER 分数 SET CHECK 分数>=0 OR 分数<=10

【例11】根据?歌手?表建立视图 myview,视图中含有包括了?歌手号?左边第一位是?1?的所有记录,正确的 SQL 语句是____。(2006年9月)

A.CREATE VIEW myview AS SELECT * FROM 歌手 WHERE LEFT(歌手号,1)= \B.CREATE VIEW myview AS SELECT * FROM 歌手 WHERE LIKE(\歌手号) C.CREATE VIEW myview SELECT * FROM 歌手 WHERE LEFT(歌手号,1)= \D.CREATE VIEW myview SELECT * FROM 歌手 WHERE LIKE(\歌手号) 【例12】删除视图 myview 的命令是____。(2006年9月) A.DELETE myview VIEW B.DELETE myview C.DROP myview VIEW D.DROP VIEW myview

【例13】假设 temp. dbf 数据表中有两个字段?歌手号?和?最后得分?下面程序的功能是:将 temp. dbf 中歌手的?最后得分?填入?歌手?表对应歌手的?最后得分?字段中(假设已增加了该字段)在下线处应该填写的 SQL 语句是____。(2006年9月)

USE 歌手

DO WHILE . NOT. EOF() _______

REPLACE 歌手.最后得分 WITH a(2) SKIP ENDDO

A.SELECT * FROM temp WHERE temp.歌手号=歌手.歌手号 TO ARRAY a B.SELECT * FROM temp WHERE temp.歌手号=歌手.歌手号 INTO ARRAY a C.SELECT * FROM temp WHERE temp.歌手号=歌手.歌手号 TO FILE a D.SELECT * FROM temp WHERE temp.歌手号=歌手.歌手号 INTO FILE a 【例14】与?SELECT DISTINCT 歌手号 FROM 歌手 WHERE 最后得分>ALL;(SELECT 最后得分 FROM 歌手 WHERE SUBSTR(歌手号,1,1)= \?等价的 SQL语句是____。(2006年9月)

A.SELECT DISTINCT 歌手号 FROM 歌手 WHERE 最后得分>=;

(SELECT MAX(最后得分)FROM 歌手 WHERE SUBSTR (歌手号,1,1)= \B.SELECT DISTINCT 歌手号 FROM 歌手 WHERE 最后得分>=;

(SELECT MIN(最后得分)FROM 歌手 WHERE SUBSTR (歌手号,1,1)= \C.SELECT DISTINCT 歌手号 FROM 歌手 WHERE 最后得分>=ANY;

(SELECT MAX(最后得分)FROM 歌手 WHERE SUBSTR (歌手号,1,1)= \D.SELECT DISTINCT 歌手号 FROM 歌手 WHERE 最后得分>=SOME;

(SELECT MAX (最后得分)FROM 歌手 WHERE SUBSTR (歌手号,1,1)= \【例15】设有学生选课表SC(学号,课程号,成绩),用SQL检索同时选修课程号为?C1?和?C5?的学生的学号的正确命令是_____。(2007年4月)

A.SELECT 学号 FROM SC WHERE 课程号=\课程号=\

19

B.SELECT 学号 FROM SC WHERE 课程号=\课程号=; (SELECT 课程号 FROM SC WHERE 课程号=\

C.SELECT 学号 FROM SC WHERE 课程号=\学号=; (SELECT 学号 FROM SC WHERE 课程号=\

D.SELECT 学号 FROM SC WHERE 课程号=\学号 IN; (SELECT 学号 FROM SC WHERE 课程号=\

解析:在主查询中查找选修了?C1?课程的学生的学号,如果这些学号也出现在选修了?C5? 课程的学号中,那就这些学生即选修了?C1? 课程,又选修了?C5? 课程。

答案:D

4.2.2 填空题

【例1】~【例4】题使用如下三个表:

零件.DBF:零件号C(2),零件名称C(10),单价N(10),规格C(8) 使用零件.DBF:项目号C(2),零件号C(2),数量I

项目.DBF:项目号C(2),项目名称C(20),项目负责人C(10),电话C(20) 【例1】为?数量?字段增加有效性规则:数量>0,应该使用的SQL语句是 ____ TABLE使用零件 ____ 数量SET ____ 数量>0。(2004年4月)

解析:修改效性规则的格式是:ALTER TABLE <表名> ALTER <字段名1> SET CHECK域完整性约束条件

答案: ALTER; ALTER; CHECK 【例2】查询与项目?s1?(项目号)所使用的任意一个零件相同的项目号、项目名称、零件号和零件名称,使用的SQL语句是

SELECT 项目.项目号,项目名称,使用零件.零件号,零件名称;

FROM 项目,使用零件,零件WHERE 项目.项目号=使用零件.项目号____; 使用零件.零件号=零件.零件号 AND 使用零件.零件号____;

(SELECT 零件号 FROM 使用零件 WHERE 使用零件.项目号=\。(2004年4月) 解析:WHERE条件语句后如果有多个条件,之间用AND或OR联接,本题这三个条件必须同时成立,所以用AND联接。在嵌套查询时有三种嵌套方式,一是使用关系符(如等号、大于号等)联接嵌套子查询,子查询的结果只能是一个数据,这样才能比较。二是使用IN或NOT IN联接嵌套子查询,判断某个字段是否在查询结果中出现,子查询的结果可以是多条记录。三是使用EXISTS或NOT EXISTS,判断子查询是否有结果,没有比较的含意。

答案: AND; IN

【例3】建立一个由零件名称、数量、项目号、项目名称字段构成的视图,视图中只包含项目号为?s2?的数据,应该使用的SQL语句是

CREATE VIEW item_view ____;

SELECT 零件.零件名称,使用零件.数量,使用零件.项目号,项目.项目名称; FROM 零件 INNER JOIN 使用零件; INNER JOIN ____;

ON 使用零件.项目号=项目.项目号; ON 零件.零件号=使用零件.零件号;

WHERE 项目.项目号=\。 (2004年4月)

解析:在JOIN语句进行多表联接时,JOIN联接表的顺序和ON联接条件的顺序恰好相反。

答案: AS;项目

20

【例4】从上一题建立的视图中查询使用数量最多的2个零件的信息,应该使用的SQL语句是SELECT * ____ 2 FROM item_view ____ 数量DESC。(2004年4月)

解析:使用TOP语句可以只显示前几条记录,ORDER BY语句进行排序。 答案: TOP; ORDER BY

4.3测试题

4.3.1 选择题

学院数据库中有两个表一个是?学院?表,另一个是?教师?表, 1~11题使用如下两个数据库表。

?教师?表

职工号 11020001 11020002 11020003 11020004 11020005 11020006 11020007 11020008 11020009 11020010 11020011 11020012 11020013 11020014 系号 01 02 01 03 01 02 03 04 03 01 04 01 02 04 姓名 肖海 王岩盐 刘星魂 张月新 李明玉 孙民山 钱无名 呼延军 王小龙 张国梁 林新月 乔小延 周兴池 欧阳秀 工资 3408 4390 2450 3200 4520 2976 2987 3220 3980 2400 1800 5400 3670 3345 主讲课程 数据结构 数据结构 C语言 操作系统 数据结构 操作系统 数据库 编译原理 数据结构 C语言 操作系统 网络技术 数据库 编译原理

?学院?表 系号 01 02 03 04 系名 计算机 通信 信息管理 教学 1.为?学院?表增加一个字段?教师人数?的SQL语句是_____。(2004年9月) A.CHANGE TABLE学院ADD教师人数I B.ALTER STRU学院ADD教师人数I C.ALTER TABLE学院ADD教师人数I D.CHANGE TABLE学院INSERT教师人数I

2.将?欧阳秀?的工资增加200元SQL语句是_____。(2004年9月) A.REPLACE教师WITH工资=工资+200 WHERE 姓名=\欧阳秀\B.UPDATE教师SET工资=工资+200 WHEN 姓名=\欧阳秀\

46

行时,如果用户单击Option2,系统将 。(2008年4月)

A.执行表单的Click事件代码 B.执行选项按纽组的Click事件代码 C.执行Option1的Click事件代码 D.不会有反应

【例 13】表格控件的数据源可以是 。(2006年4月) A.视图 B.表 C.SQL SELECT语句 D.以上答案都对 【例 14】以下所列各项属于命令按钮事件的是 。(2006年4月) A.Parent B.This C.ThisForm D.Click

【例 15】 表单名为myForm的表单中有一个页框myPageFrame,将该页框的第3页(Page3)的标题设臵为?修改?,可以使用代码 。(2008年4月)

A.myForm.Page3.myPageFrame.Caption=\修改\B.myForm.myPageFrame.Caption.Page3=\修改\C.Thisform.myPageFrame.Page3.Caption=\修改\D.Thisform.myPageFrame.Caption.Page3=\修改\

【例 16】新创建的表单默认标题为Form1,为了修改表单的标题,应设臵表单的 。(2003年9月)

A.Name属性 B.Caption属性 C.Closable属性 D.AlwaysOnTop属性

【例 17】下面关于表单若干常用事件的描述中,正确的是 。(2004年9月) A.释放表单时,Unload事件在Destroy事件之前引发 B.运行表单时,Init事件在Load 事件之前引发 C.单击表单的标题栏,引发表单的Click事件 D.上面的说法都不对

【例 18】页框控件也称作选项卡控件,在一个页框中可以有多个页面,页面个数的属性是 。(2008年9月)

A.Count B.Page C.Num D.PageCount

7.2.2 填空题

【例1】命令按钮的Cancel属性的默认值是 。(2009年9月) 【例2】为使表单运行时在主窗口中居中显示,应设臵表单的AutoCenter属性为_______。(2007年4月)

【例3】在Visual FoxPro中,如果要改变表单上表格对象中当前显示的列数,应设臵表格的________属性值。(2006年9月)

【例4】Visual FoxPro表单的Load事件发生在Init事件之______.(2004年9月) 【例5】为了在文本框输入时隐藏信息(如显示?*?),需要设臵该控件的 属性。(2008年9月)

【例6】 在Visual FoxPro中,运行当前文件夹下的表单T1.SCX的命令是_______ (2003年9月)

【例7】可以使编辑框的内容处于只读状态的两个属性是ReadOnly和 。(2009年9月) 【例8】在Visual FoxPro的表单设计中,为表格控件指定数据源的属性是_______.(2004年9月)

【例9】在将设计好的表单存盘时,系统生成扩展名分别是SCX和_____的两个文件。(2004年9月)

【例10】在Visual FoxPro 中为表单指定标题的属性是_____ (2004年9月)

7.3.1 选择题

1.下面属于表单方法名(非事件名)的是 。

47

A.Init B.Release C.Destroy D.Caption 2. 假设表单MyForm隐藏着,让该表单在屏幕上显示的命令是 。

A.MyForm.List B.MyForm.Display C.MyForm.Show D.MyForm.ShowForm 3.在Visual FoxPro中调用表单mf1的正确命令是_________ 。

A.DO mf1 B.DO FROM mf1 C.DO FORM mf1 D.RUN mf1 4. 以下属于容器类控件的是 。 A.Text B.Form C.Label D.CommandBotton 5. 在表单中,有关列表框和组合框内选项的多重选择,正确的叙述是 。 A.列表框和组合框都可以设臵成多重选择 B.列表框和组合框都不可以设臵成多重选择 C.列表框可以设臵多重选择,而组合框不可以 D.组合框可以设臵多重选择,而列表框不可以

6.下列表单的哪个属性设臵为真时,表单运行时将自动居中 。

A.AutoCenter B.AlwaysOnTop C.ShowCenter D.FormCenter

7. 在Visual FoxPro中,组合框的Style属性值为2,则该下拉框的形式为 。 A.下拉组合框 B.下拉列表框 C.下拉文本框 D.错误设臵 8. 表单控件工具栏的作用是在表单上创建 。 A.文本 B.事件 C.控件 D.方法 9. 在Visual FoxPro中,表单文件的扩展名为 。 A..QPR B..PRG C.. SCX D.. PJX 10.如果要运行一个表单,下列事件首先触发的是_________。 A.Load B.Error C.Init D.Click 11.释放和关闭表单的方法是 。

A.Release B.Delete C.LostFocus D.Destory 12. 有Visual FoxPro中,释放表单时会引发的事件是_________。

A.UnLoad事件 B.Init事件 C.Load事件 D.Release事件 13. 在Visual Foxpro中,Unload事件的触发时机是_________。

A.释放表单 B.打开表单 C.创建表单 D.运行表单 14. 下列关于组合框的说法中正确的是 。

A.组合框中,只有一个条目是可见的 B.组合框不提供多重选定的功能 C.组合框没有MultiSelect属性的设臵 D.以上说法均正确

15.执行命令MyForm=CreateObject(?Form?)可以建立一个表单,为了让该表单在屏幕上显示,应该执行命令 。

A.MyForm.List B.MyForm.Display C.MyForm.Show D.MyForm.ShowForm

16.假定一个表单里有一个文本框Text1和一个命令按钮组CommandGroup1。命令按钮组是一个容器对象,其中包含Command1和Command2两个命令按钮。如果要在Command1命令按钮的某个方法中访问文本框的Value属性值,正确的表达式是 。

A.This.ThisForm.Text1.Value B.This.Parent.Parent.Text1.Value C.Parent.Parent.Text1.Value D.This.Parent.Text1.Value

17. 对于表单及控件的绝大多数属性,其类型通常是固定的,通常Caption属性只用来接收 。

A.数值型数据 B.字符型数据 C.逻辑型数据 D.以上数据类型都可以 18. 在表单控件中,要保存多行文本,可创建 。 A.列表框 B.文本框 C.标签 D.编辑框

48

19. 在表单中为表格控件指定数据源的属性是 。

A.DataSource B.DateFrom C.RecordSource D.RecordFrom 20.设臵文本框内容的属性是 。

A.value B.Caption C.Name D.Inputmask

21. 为了隐藏在文本框中输入的信息,用占位符代替显示用户输入的字符,需要设臵的属性是 。

A.value B.ControlSource C.InputMask D.PasswordChar 22. 如果文本框的InputMask属性值是#99999,允许在文本输入的是 。 A.+12345 B.abc123 C.$12345 D.abcdef 23. 下列属性中,与在编辑框中选定文本无关的属性是 。 A.SelStart B.SelLength C.SelText D.ScrollBars 24.在表单中有命令按钮Cd1和文本框T1,将文本框的InputMask属性值设臵为$9,999.9,然后在命令按钮的Click事件中输入代码ThisForm.T1.Value=123456.789,运行表单时,单击命令按钮,此时文本框中显示的内容为 。

A.$123,456.789 B.$23,456.7 C.123,456.7 D.**,***.* 25.在命令按钮组中,决定命令按钮数目的属性是 。 A.ButtonCount B.Buttons C.Value D.ControlSource 26.下列关于表格的说法中正确的是 。

A.表格是一种容器对象,在表格中全部按列来显示数据

B.表格对象由若干列对象组成,每个列对象包含若干个标头对象和控件 C.表格、列、标头和控件有自己的属性、方法和事件 D.以上说法均正确

27.将编辑框的ReadOnly属性值设臵为.T.,则运行时此编辑框中的内容 。 A.只能读 B.只能用来编辑 C.可以读也可以编辑 D.对编辑框设臵无效 28.如果文本框的SelStart属性值为-1,表示的含义为 。 A.光标定位在文本框的第一个字符位臵上 B.从当前光标处向前选定一个字符 C.从当前光标处向后选定一个字符 D.错误属性值,该属性值不能为负数

7.3.2 填空题

1.Visual FoxPro子类是在已有类的基础上进行修改而形成的类,子类对父类的方法和属性可以 。

2.在将设计好的表单存盘时,系统将生成扩展名分别是SCX和 的两个文件。 3.在Visual FoxPro中为表单指定标题的属性是 。

4.在表单设计器中可以通过________工具栏的工具快速对齐表单中的控件。 5.在Visual FoxPro中,在运行表单时最先引发的表单事件是 事件。 6.在表单中要使控件成为可见的,应设臵控件的 属性。

7.在Visual FoxPro表单中,当用户使用鼠标单击命令按钮时,会触发命令按钮 的 事件。

8.在文本框中, 属性指定在一个文本框中如何输入和显示数据。 9.在文本框中,利用 属性指定文本框内显示占位符。

10. 设计表单时,要确定表单中是否有最大化按钮,可通过表单 属性进行设臵。 11. 在Visual FoxPro中释放和关闭表单的方法是_____。

49

12.在表单中设计一组复选框(CheckBox)控件是为了可以选择____个或多个选项。

13.选项组:○男 ○女,该选项组的Value属性值赋为0。当其中的第一个选项按钮?男?被选中,该选项组的Value属性值为 。

14.在Visual FoxPro表单中,用来确定复选框是否被选中的属性是 。

第8章 菜单设计与应用

8.2典型试题与解析

8.2.1 选择题

【例1】如果菜单项的名称为?统计?,热键是T,在菜单名称一栏中应输入______。(2003年9月)

A.统计(\\

【例3】为表单建立快捷菜单MYMENU,调用快捷菜单的命令代码DO mymenu.mpr WITH THIS,应该放在表单的那个事件中______。(2004年9月)

A.Destroy事件 B.Init事件 C.Load 事件 【例4】扩展名为.mnx的文件是______。(2005年9月) A.备注文件 B.项目文件 C.表单文件 【例5】在Visual FoxPro中可以用DO命令执行的文件不包括______。(2006年4月) A.PRG文件 B.MPR文件 C.FRX文件 【例6】以下是与设臵系统菜单有关的命令,其中错误的是______。(2006年4月) A.SET SYSMENU DEFAULT B.SET SYSMENU TO DEFAULT C.SET SYSMENU NOSAVE D.SET SYSMENU SAVE 【例7】 在Visual FoxPro中,要运行菜单文件menul.mpr,可以使用命令______。(2006年4月)

A.DO menul B.DO menul.mpr C.DO MENU menul D.RUN menul 【例8】在Visual FoxPro中,菜单程序文件的默认扩展名是______。(2007年9月) A. mnx B. mnt C. mpr 【例9】在菜单设计中,可以在定义菜单名称时为菜单项指定一个访问键。规定了菜单项的访问键为?x?的菜单名称定义是_____。(2008年9月)

A.综合查询\\<(x) B.综合查询/<(x) C.综合查询(\\

D.RightClick

D.菜

D.QPR文件

8.2.2 填空题

【例1】弹出式菜单可以分组,插入分组线的方法是在?菜单名称?项中输入_____两个符号。(2003年9月)

【例2】为了从用户菜单返回到默认的系统菜单应该使用命令SET_____ TO DEFAULT。(2004年9月)

【例3】要将一个弹出式菜单作为某个控件的快捷菜单,通常是在该控件的_____事件代码中添加调用弹出式菜单程序的命令。(2006年4月)

【例4】在Visual FoxPro中,假设当前文件夹中有菜单程序文件MYMENU.MPR,运行该菜单程序的命令是_____。

50

【例4】在命令窗口中执行_____命令可以启动菜单设计器。 【例5】菜单文件的扩展名是_____。 【例6】菜单程序文件的扩展名是_____。

【例7】在关闭?菜单设计器?之前,选择?菜单?菜单中的_____命令,会生成菜单程序文件MPR。

【例8】为菜单项设臵快捷键的方法是,在菜单设计器中单击菜单项右侧的_____按钮。

8.3.1 选择题

1.假设建立了一个菜单menul,为了执行菜单应该使用命令_____。 A. DO MENU B. RUN MENU menul 了C. DO menul D. DO menul.mpr 2. 在Visual FoxPro 打开菜单设计器窗口后,增加的系统菜单项是______。 A. 预览 B. 数据库 C. 菜单 D. 显示 3. 菜单设计器设计好的菜单保存后,其生成的文件扩展名为_____。 A. .scx 和.sct B. .mnx 和.mnt C. .frx 和.frt D. .pjx 和.pjt 4. 将当前的系统菜单保存为缺省设臵使用命令______。 A.SET SYSMENU DEFAULT B.SET SYSMENU TO DEFAULT C.SET SYSMENU NOSAVE D.SET SYSMENU SAVE

5. 选择?显示?菜单的?常规选项?可以为菜单添加?设臵?代码,此代码将在菜单定义代码______执行。

A. 之后 B. 之前 C. 中间 6. 要打开菜单设计器,使用的命令为_____。 A. CREAT FORM B. MODI FORM C. CREAT MENU D. MODI MENU

7. 使用菜单设计器时,选中菜单项之后,如果要设计它的子菜单,应在?结果?中选择_____。 A. 命令 B. 子菜单 C. 填充名称 8. 如果想查看菜单程序文件mymenu.mpr的代码内容,在命令窗口中要输入_____。 A. MODIFY COMMAND < mymenu> B. MODIFY MENU < mymenu > C. MODIFY COMMAND < mymenu.mpr> D. MODIFY MENU < mymenu.mpr>

9. 使用菜单设计器时,若菜单项对应的任务由多条命令才能完成,应在?结果?中选择_____。 A. 命令 B. 子菜单 C. 填充名称 10. 在菜单设计器中生成菜单的程序文件并运行后,生成的程序文件扩展名有_____。 A..scx 和.sct B..mnx 和.mnt C..frx 和.frt D..mpr 和 .mpx

8.3.2 填空题

1. Visual FoxPro有两种菜单:下拉式菜单和快捷菜单。下拉式菜单通常由一个_____菜单和一组弹出式菜单组成。

2. 允许或禁止在应用程序执行时访问系统菜单的命令是_____。 3. 恢复Visual FoxPro 系统菜单的命令是_____。

4. 菜单项的快捷键通常用_____键与一个字母键相组合,菜单项的热键通常是一个带下划线的字母。

5. 要将创建好的快捷菜单添加到控件上,必须在该控件的_____事件中添加执行菜单文件的代码。

6. 要为顶层表单添加菜单,首先需要在菜单设计时,在?常规选项?对话框中选择_____复选框。

7. 使表单成为顶层表单,需要在表单的_____事件代码中添加调用菜单程序的命令。


Visual FoxPro考试篇 正确版.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:对其他教师党员批评意见清单

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: