1、二级 VISUAL+FOXPRO 笔试 383 及答案解析(总分:90.00,做题时间:90 分钟)一、B选择题/B(总题数:27,分数:70.00)1.设当前表有 10 条记录,若要在第 5 条记录的前面插入一条记录,在执行 GO 5 后再执行如下命令( )。(分数:2.00)A.INSERTB.INSERT BLANKC.INSERT BEFORED.APPEND BEFORE2.在 Visual FoxPro 中,下列关于表的叙述正确的是( )。(分数:2.00)A.在数据库表和自由表中,都能给字段定义有效性规则和默认值B.在自由表中,能给表中的字段定义有效性规则和默认值C.在数据库表中
2、,能给表中的字段定义有效性规则和默认值D.在数据库表和自由表中,都不能给字段定义有效性规则和默认值3.在 ESQL 语句中,与表达式“供应商名 LIKE“%北京%“”功能相同的表达式是( )。(分数:2.00)A.LEFT(供应商名,4)=“北京”B.“北京”供应商名C.供应商名 In“%北京%”D.AT(供应商名,“北京”)4.设有如下 3 个关系表: (分数:2.00)A.T=RRSB.T=RSC.TRSD.T=R/S5.在 Visual FoxPro 中,下面关于索引的正确描述是( )。(分数:2.00)A.当数据库表建立索引以后,表中的记录的物理顺序将被改变B.索引的数据将与表的数据存
3、储在一个物理文件中C.建立索引是创建一个索引文件,该文件包含指向表记录的指针D.使用索引可以加快对表的更新操作6.对于创建新类,Visual FoxPro 提供的工具有( )。(分数:2.00)A.类设计器和报表设计器B.类设计器和表单设计器C.类设计器和查询设计器D.类设计器7.以下关于“查询”的描述正确的是( )。(分数:2.00)A.查询保存在项目文件中B.查询保存在数据库文件中C.查询保存在表文件中D.查询保存在查询文件中8.有关连编应用程序,下面的描述正确的是( )。(分数:2.00)A.项目连编以后应将主文件视作只读文件B.个项目中可以有多个主文件C.数据库文件可以被指定为主文件D
4、.在项目管理器中,文件名左侧带有符号“”的文件在项目连编后是只读文件9.某二叉树中有 n 个度为 2 的结点,则该二叉树中的叶子结点数为( )。(分数:2.00)A.n+1B.n-1C.2nD.n/210.表格控件的数据源可以是( )。(分数:2.00)A.视图B.表C.SQL SELECT 语句D.以上 3 种都可以(25)(33)小题使用的数据表如下:当前盘当前目录下有数据库:大奖赛.dbc,其中有数据库表“歌手 dbf”、“评分.dbf”。“歌手”表:“评分”表:(分数:18.00)(1).为“歌手”表增加一个字段“最后得分”的 SQL 语句是( )。(分数:2.00)A.ALTER T
5、ABLE 歌手 ADD 最后得分 F(6,2)B.ALTER DBF 歌手 ADD 最后得分 F 6,2C.CHANGE TABLE 歌手 ADD 最后得分 F(6,2)D.CHANGE TABLE 学院 INSERT 最后得分 F 6,2(2).插入一条记录到“评分”表中,歌手号、分数和评委号分别是“1001”、9.9 和“105”,正确的 SQL语句是( )。(分数:2.00)A.INSERT VALUES(“1001“,9.9,“105“)INTO 评分(歌手号,分数,评委号)B.INSERT TO 评分(歌手号,分数,评委号)VALUES(“1001“,9.9,“105“)C.INSE
6、RT INTO 评分(歌手号,分数,评委号)VALUES(“1001“,9.9,“105“)D.INSERT VALUES(“1001“,9.9,“105“)TO 评分(歌手号,分数,评委号)(3).假设每个歌手的“最后得分”的计算方法是;去掉一个最高分和一个最低分,取剩下分数的平均分。根据“评分”表求每个歌手的“最后得分”并存储于表 TEMP 中,表 TEMP 中有两个字段:“歌手号”和“最后得分”,并且按最后得分降序排列,生成表 TEMP 的 SQL 语句是( )。(分数:2.00)A.SELECT 歌手号,(COUNT(分数)-MAX(分数)-MIN(分数)/(SUM(*)-2)最后得分
7、;FROM 评分 INTO DBF TEMP GROUP BY 歌手号 ORDER BY 最后得分 DESCB.SELECT 歌手号,(COUNT(分数)-MAX(分数)-MIN(分数)/(SUM(*)-2)最后得分;FROM 评分 INTO DBF TEMP GROUP BY 评委号 ORDER BY 最后得分 DESCC.SELECT 歌手号,(SUM(分数)-MAX(分数)-MIN(分数)/(COUNT(*)-2)最后得分;FROM 评分 INTO DBF TEMP GROUP BY 评委号 ORDER BY 最后得分 DESCD.SELECT 歌手号,(SUM(分数)-MAX(分数)-
8、MIN(分数)/(COUNT(*)-2)最后得分;FROM 评分 INTO DBF TEMP GROUP BY 歌手号 ORDER BY 最后得分 DESC(4).与“SELECT* FROM 歌于 WHERE NOT(最后得分9.00 OR 最后得分8.00)”等价的语句是( )。(分数:2.00)A.SELECT*FROM 歌手 WHERE 最后得分 BETWEEN 9.00 AND 8.00B.SELECT*FROM 歌手 WHERE 最后得分=8.00 AND 最后得分=9.00C.SELECT*FROM 歌手 WHERE 最后得分9.00 OR 最后得分8.00D.SELECT*FR
9、OM 歌手 WHERE 最后得分=8.00 AND 最后得分=9.00(5).为“评分”表的“分数”字段添加有效性规则:“分数必须大于等于。并且小于等于 10”,正确的SQL 语句是( )。(分数:2.00)A.CHANGE TABLE 评分 ALTER 分数 SET CHECK 分数=0 AND 分数=10B.ALTER TABLE 评分 ALTER 分数 SET CHECK 分数=0 AND 分数=10C.ALTER TABLE 评分 ALTER 分数 CHECK 分数=0 AND 分数=10D.CHANGE TABLE 评分 ALTER 分数 SET CHECK 分数=0 OR 分数=1
10、0(6).根据“歌手”表建立视图 myview,视图中含有包括了“歌于号”左边第一位是“1”的所有记录,正确的 SQL 语句是( )。(分数:2.00)A.CREATE VIEW myview AS SELECT* FROM 歌手 WHERE LEFT(歌手号,1)=“1“B.CREATE VIEW myview AS SELECT* FROM 歌手 WHERE LIKE(“1”,歌手号)C.CREATE VIEW myview SELECT *PROM 歌手 WHERE LEFT(歌手号,1)=“1”D.CREATE VIEW myview SELECT *FROM 歌手 WHERE LIK
11、E(“1”,歌手号)(7).删除视图 myview 的命令是( )。(分数:2.00)A.DELETE myview VIEWB.DELETE myviewC.DROP myview VIEWD.DROP VIEW myview(8).假设 temp. dbf 数据表中有两个字段“歌手号”和“最后得分”。下面程序段的功能是:将 temp. dbf 中歌手的“最后得分”填入“歌手”表对应歌手的“最后得分”字段中(假设已增加了该字段)。在下划线处应该填写的 SQL 语句是( )。USE 歌手 DO WHILE. NOT. EOF () _ REPLACE 歌手 .最后得分 WITH a2 SKIP
12、ENDDO(分数:2.00)A.SELECT *FROM temp WHERE temp .歌手号=歌于 .歌手号 TO ARRAY aB.SELECT *FROM temp WHERE temp .歌手号=歌手 .歌手号 INTO ARRAY aC.SELECT *FROM temp WHERE temp .歌手号=歌手 .歌手号 TO FILE sD.SELECT *FROM temp WHERE temp .歌手号=歌手 .歌手号 INTO FILE a(9).与“SELECT DISTINCT 歌手号 FROM 歌手 WHERE 最后得分=ALL;(SELECT 最后得分 FROM 歌
13、手 WHERE SUBSTR (歌手号,1,1)=“2”)”等价的 SQL 语句是( )。(分数:2.00)A.SELECT DISTINCT 歌手号 FROM 歌手 WHERE 最后得分=;(SELECT MAX(最后得分)FROM 歌手 WHERE SUBSTR(歌手号,1,1)=“2”)B.SELECT DISTINCT 歌手号 FROM 歌手 WHERE 最后得分=;(SELECT MIN(最后得分)FROM 歌手 WHERE SUBSTR(歌手号,1,1)=“2”)C.SELECT DISTINCT 歌手号 FROM 歌手 WHERE 最后得分=AVY;(SELECT 最后得分 FR
14、OM 歌手 WHERE SUBSTR(歌于号,1,1)=“2”)D.SELECT DISTINCT 歌手号 FROM 歌手 WHERE 最后得分=SOME;(SELECT 最后得分 FROM 歌手 WHERE SUBSTR (歌手号,1,1)=“2”)11.如果指定参照完整性的删除规则为“级联”,则当删除父表中的记录时,( )。(分数:2.00)A.系统自动备份父表中被删除记录到一个新表中B.若子表中有相关记录,则禁止删除父表中记录C.会自动删除子表中所有相关记录D.不作参照完整性检查,删除父表记录与子表无关12.下面选项中小属于面向对象程序设计特征的是( )。(分数:2.00)A.继承性B.
15、多态性C.类比性D.封装性13.当内存变量与字段名变量重名时,系统优先处理( )。(分数:2.00)A.内存变量B.字段名变量C.全局变量D.局部变量14.下列叙述中错误的是( )。(分数:2.00)A.在数据库系统中,数据的物理结构必须与逻辑结构一致B.数据库技术的根本目标是要解决数据的共享问题C.数据库设计是指在已有数据库管理系统的基础上建立数据库D.数据库系统需要操作系统的支持15.以下关于“视图”的描述正确的是( )。(分数:2.00)A.视图保存在项目文件中B.视图保存在数据库中C.视图保存在表文件中D.视图保存在视图文件中16.单击项目上的“连编”,则可以生成( )文件。(分数:2
16、.00)A.BATB.APPC.DATD.DAC17.在结构化程序设计中,模块划分的原则是( )。(分数:2.00)A.各模块应包括尽量多的功能B.各模块的规模应尽量大C.各模块之间的联系应尽量紧密D.模块内具有高内聚度、模块间具有低耦合度18.数据库表的字段可以定义规则,规则是( )。(分数:2.00)A.逻辑表达式B.字符表达式C.数值表达式D.前 3 种说法都不对19.运行程序:AA=0FORI=2TO 100 STEP 2 AA=AA+IENDFOR? AARETURN 该程序得到的结果为( )。(分数:2.00)A.1100 中奇数的和B.1100 中偶数的和C.1100 中所有数的
17、和D.没有意义20.下列叙述中正确的是( )。(分数:2.00)A.在面向对象的程序设计中,各个对象之间具有密切的联系B.在面向对象的程序设计中,各个对象都是公用的C.在面向对象的程序设计中,各个对象之间相对独立,相互依赖性小D.上述 3 种说法都不对21.设有两个数据库表,父表和子表之间是一对多的联系,为控制子表和父表的关联,可以设置“参照完整性规则”,为此要求这两个表( )。(分数:2.00)A.在父表联接字段上建立普通索引,在于表联接字段上建立主索引B.在父表联接字段上建立主索引,在子表联接字段上建立普通索引C.在父表联接字段上不需要建立任何索引,在子表联接字段上建立普通索引D.在父表和
18、子表的连接字段上都要建立主索引22.一棵二叉树中共有 70 个叶子结点与 80 个度为 1 的结点,则该二叉树中的总结点数为( )。(分数:2.00)A.221B.219C.231D.22923.数据库技术的根本目标是要解决数据的( )。(分数:2.00)A.存储问题B.共享问题C.安全问题D.保护问题24.下列选项中不属于结构化程序设计方法的是( )。(分数:2.00)A.自顶向下B.逐步求精C.模块化D.可复用25.在关系数据库中,用来表示实体之间联系的是( )。(分数:2.00)A.树结构B.网结构C.线性表D.二维表26.设 X=10,语句?VARTYPE(“X“)的输出结果是( )。
19、(分数:2.00)A.NB.CC.10D.X二、B填空题/B(总题数:7,分数:20.00)27.设一棵完全二叉树共有 700 个结点,则在该二叉树中有U 【1】 /U个叶子结点。(分数:2.00)填空项 1:_28.在面向对象方法中,U 【2】 /U描述的是具有相似属性与操作的一组对象。(分数:2.00)填空项 1:_29.诊断和改正程序中错误的工作通常称为U 【3】 /U。(分数:2.00)填空项 1:_30.对下列二叉树进行中序遍历的结果为U 【4】 /U。 (分数:2.00)填空项 1:_31.在结构化分析使用的数据流图(DFD) 中,利用U 【5】 /U对其中的图形元素进行确切解释。
20、(分数:2.00)填空项 1:_32.想要定义标签控件的 Caption 显示效果的大小,要定义标签属性的U 【6】 /U。(分数:2.00)填空项 1:_在第(7)(10)小题中使用如下三个表:零件. DBF:零件号 C(2),零件名称 C(10),单价 N(10),规格 C(8)使用零件 .DBF:项目号 C(2),零件号 C(2),数量 1项目 .DBF:项目号 C(2),项目名称 C(20),项目负责人 C(10),电话 C(20)(分数:8.00)填空项 1:_填空项 1:_填空项 1:_填空项 1:_二级 VISUAL+FOXPRO 笔试 383 答案解析(总分:90.00,做题时
21、间:90 分钟)一、B选择题/B(总题数:27,分数:70.00)1.设当前表有 10 条记录,若要在第 5 条记录的前面插入一条记录,在执行 GO 5 后再执行如下命令( )。(分数:2.00)A.INSERTB.INSERT BLANKC.INSERT BEFORE D.APPEND BEFORE解析:解析 在 Visual FoxPro 中,只有 INSERT 命令可在表的中间插入记录。INSERT 命令中的 BEFORE 选项如果被省略,将在当前指针的后面插入一条记录,反之在当前记录的前面插入一条空记录。2.在 Visual FoxPro 中,下列关于表的叙述正确的是( )。(分数:2
22、.00)A.在数据库表和自由表中,都能给字段定义有效性规则和默认值B.在自由表中,能给表中的字段定义有效性规则和默认值C.在数据库表中,能给表中的字段定义有效性规则和默认值 D.在数据库表和自由表中,都不能给字段定义有效性规则和默认值解析:解析 在 Visual FoxPro 中,只有数据库表中的字段才能定义字段的有效性规则,自由表不可以。3.在 ESQL 语句中,与表达式“供应商名 LIKE“%北京%“”功能相同的表达式是( )。(分数:2.00)A.LEFT(供应商名,4)=“北京”B.“北京”供应商名 C.供应商名 In“%北京%”D.AT(供应商名,“北京”)解析:解析 函数 LEFT
23、(字符表达式,长度)的功能是从指定表达式的左端取一个指定长度的子串作为函数值。选项 A 的含义是供应商名前两个汉字为“北京”。函数 AT(字符表达式 1,字符表达式 2,数值表达式)的功能是:如果字符表达式 1是字符表达式 2的子串,则返回字符表达式 1值的首字符在字符表达式 2值中的位置;若不是子串,则返回 0,因此选项 D 的含义是;返回供应商名在“北京”字符串中的位置。选项 C 为一个错误表达式。选项 B 中的运算符是子串包含测试,“北京”“供应商名”表示“北京”是否是“供应商名”字段的子串,能够与题干中的 LIKE 实现同样的功能,为正确答案。4.设有如下 3 个关系表: (分数:2.
24、00)A.T=RRSB.T=RSC.TRS D.T=R/S解析:解析 R 表中只有一个域名 A,有两个记录,分别是 m 和 n: s 表中有两个域名,分别是 B 和 C,其所对应的记录分别为 1 和 3。表 T 是由 R 的第一个记录依次与 S 的所有记录组合,然后再由 R 的第二个记录与 S 的所有记录组合,形成的一个新表。上述运算符合关系代数的笛卡尔积运算规则。关系代数中,笛卡尔积运算用“”来表示。因此,上述运算可以表示为 T=RS。5.在 Visual FoxPro 中,下面关于索引的正确描述是( )。(分数:2.00)A.当数据库表建立索引以后,表中的记录的物理顺序将被改变B.索引的数
25、据将与表的数据存储在一个物理文件中C.建立索引是创建一个索引文件,该文件包含指向表记录的指针 D.使用索引可以加快对表的更新操作解析:解析 索引是以独立的索引文件的形式存在,并根据指定的索引关键字表达式建立。索引文件可以看成索引关键字的值与记录号之间的对照表,也就是说,在该文件中,包含有指向表记录的指针。6.对于创建新类,Visual FoxPro 提供的工具有( )。(分数:2.00)A.类设计器和报表设计器B.类设计器和表单设计器C.类设计器和查询设计器D.类设计器 解析:解析 在 Visual FoxPro 中创建新类,只能通过类设计器来创建。7.以下关于“查询”的描述正确的是( )。(
26、分数:2.00)A.查询保存在项目文件中B.查询保存在数据库文件中C.查询保存在表文件中D.查询保存在查询文件中 解析:解析 查询就是预先定义好的一个 SQL SELECT 语句,在不同的需要场合可以直接或反复使用,查询以扩展名为.QBR 的文件单独保存在磁盘上,在 Visual FoxPro 中认为此类文件为查询文件。8.有关连编应用程序,下面的描述正确的是( )。(分数:2.00)A.项目连编以后应将主文件视作只读文件 B.个项目中可以有多个主文件C.数据库文件可以被指定为主文件D.在项目管理器中,文件名左侧带有符号“”的文件在项目连编后是只读文件解析:解析 对 Visual FoxPro
27、 中的应用程序进行连编后,一个项目中只能有一个主文件,且主文件只能被视为只读文件。9.某二叉树中有 n 个度为 2 的结点,则该二叉树中的叶子结点数为( )。(分数:2.00)A.n+1 B.n-1C.2nD.n/2解析:解析 对任意一棵二叉树,若终端结点(即叶子结点)数为 n0,而其度数为 2 的结点数为 n2,则n0=n2+1。由此可知,若二叉树中有 n 个度为 2 的结点,则该二叉树中的叶子结点数为 n+1。10.表格控件的数据源可以是( )。(分数:2.00)A.视图B.表C.SQL SELECT 语句D.以上 3 种都可以 解析:解析 表格控件的数据源可以为表、别名、提示、查洵、SQ
28、L 语句等,而视图可以说是在数据库表的基础上创建的一种虚拟表,也可以认为是一种特殊的 SQL 语句,所以视图、表及 SQL SELECT 语句均可以作为表格控件的数据源。(25)(33)小题使用的数据表如下:当前盘当前目录下有数据库:大奖赛.dbc,其中有数据库表“歌手 dbf”、“评分.dbf”。“歌手”表:“评分”表:(分数:18.00)(1).为“歌手”表增加一个字段“最后得分”的 SQL 语句是( )。(分数:2.00)A.ALTER TABLE 歌手 ADD 最后得分 F(6,2) B.ALTER DBF 歌手 ADD 最后得分 F 6,2C.CHANGE TABLE 歌手 ADD
29、最后得分 F(6,2)D.CHANGE TABLE 学院 INSERT 最后得分 F 6,2解析:解析 修改字段属性的命令的语法格式是;ALTER TABLE TableName1 ALTER FieldName2 FieldTypenFieldWidth,从 4 个候选项中可以看出,只有选项 A 是正确的。选项 C 和 D 关键字 CHANGE有误,而选项 B 用来指定表的短语 DBF 错误。(2).插入一条记录到“评分”表中,歌手号、分数和评委号分别是“1001”、9.9 和“105”,正确的 SQL语句是( )。(分数:2.00)A.INSERT VALUES(“1001“,9.9,“1
30、05“)INTO 评分(歌手号,分数,评委号)B.INSERT TO 评分(歌手号,分数,评委号)VALUES(“1001“,9.9,“105“)C.INSERT INTO 评分(歌手号,分数,评委号)VALUES(“1001“,9.9,“105“) D.INSERT VALUES(“1001“,9.9,“105“)TO 评分(歌手号,分数,评委号)解析:解析 使用 SQL 语言向表中插入数据的命令是 INSERT INTO,命令格式为:INSERT INTO表名(字段名 1,字段名 2,.)VALUES(表达式 1,表达式 2,.)或 INSEERT INTO表名FROM ARRAY数组名F
31、ROM MEMVAR,作用是在表尾插入一条记录。而在本题的 4 个选项中:选项 A 的顺序不正确,选项 B 则使用了错误的关键字 TO,选项 D 除了顺序不正确之外,还使用了错误的关键字 TO。(3).假设每个歌手的“最后得分”的计算方法是;去掉一个最高分和一个最低分,取剩下分数的平均分。根据“评分”表求每个歌手的“最后得分”并存储于表 TEMP 中,表 TEMP 中有两个字段:“歌手号”和“最后得分”,并且按最后得分降序排列,生成表 TEMP 的 SQL 语句是( )。(分数:2.00)A.SELECT 歌手号,(COUNT(分数)-MAX(分数)-MIN(分数)/(SUM(*)-2)最后得
32、分;FROM 评分 INTO DBF TEMP GROUP BY 歌手号 ORDER BY 最后得分 DESCB.SELECT 歌手号,(COUNT(分数)-MAX(分数)-MIN(分数)/(SUM(*)-2)最后得分;FROM 评分 INTO DBF TEMP GROUP BY 评委号 ORDER BY 最后得分 DESCC.SELECT 歌手号,(SUM(分数)-MAX(分数)-MIN(分数)/(COUNT(*)-2)最后得分;FROM 评分 INTO DBF TEMP GROUP BY 评委号 ORDER BY 最后得分 DESCD.SELECT 歌手号,(SUM(分数)-MAX(分数)
33、-MIN(分数)/(COUNT(*)-2)最后得分;FROM 评分 INTO DBF TEMP GROUP BY 歌手号 ORDER BY 最后得分 DESC 解析:解析 根据题意,在此 SQL 语句中,首先要根据“歌手号”分组计算出每个歌手的总成绩,然后去掉该歌手的最高分及最低分,并且根据评委人数(减去两个去掉分数的评委数量)来计算平均分,将结果保存在表 TEMP 中,并按照“最后得分”的降序排列。在此题选项中,选项 A 及选项 B 在计算歌手总分数时使用了错误的函数 COUNT,并在计算评委人数时使用了错误的函数 SUM,所以不正确。而选项 C 虽然使用了正确的函数,但用来指定分组的 GR
34、OUP BY 子句后面错误地使用了“评委号”字段(应当使用“歌手号”字段),所以也不正确。选项 D 正确表达了题意,所以为正确答案。(4).与“SELECT* FROM 歌于 WHERE NOT(最后得分9.00 OR 最后得分8.00)”等价的语句是( )。(分数:2.00)A.SELECT*FROM 歌手 WHERE 最后得分 BETWEEN 9.00 AND 8.00B.SELECT*FROM 歌手 WHERE 最后得分=8.00 AND 最后得分=9.00 C.SELECT*FROM 歌手 WHERE 最后得分9.00 OR 最后得分8.00D.SELECT*FROM 歌手 WHERE
35、 最后得分=8.00 AND 最后得分=9.00解析:解析 题干中 SELECT 语句的意义为:选择出“歌手”表中所有“最后得分”字段中值不大于9.00(包括 9.00)及不小于 8.00(包括 8.00)记录的所有字段,因此选项 C 中 SQL 语句的意义为选出“歌手”表中所有“最后得分”字段值大于 9.00 或小于 8.00 的记录,与题意不符。选项 D 中 SQL 语句的意义为选出“歌手”表中所有“最后得分”字段值小于等于 9.00 或大于等于 8.00 的记录,与题意不符。选项 A 有中使用了 BETWEEN. AND. 表达式,但当 BETWEEN 作取值范围限定时,包括限定条件的两
36、个端点值,并且使用 BETWEEN. AND. 的两个限定值应当遵循从小到大的原则,而此题正好相反,所以不可能查询出结果,故也为错误答案。(5).为“评分”表的“分数”字段添加有效性规则:“分数必须大于等于。并且小于等于 10”,正确的SQL 语句是( )。(分数:2.00)A.CHANGE TABLE 评分 ALTER 分数 SET CHECK 分数=0 AND 分数=10B.ALTER TABLE 评分 ALTER 分数 SET CHECK 分数=0 AND 分数=10 C.ALTER TABLE 评分 ALTER 分数 CHECK 分数=0 AND 分数=10D.CHANGE TABLE
37、 评分 ALTER 分数 SET CHECK 分数=0 OR 分数=10解析:解析 本题考查使用 SQL 对表文件的字段进行有效性设置。可以使用命令 ALTER TABLE 来实现对表的字段进行有效性设置,选项 A 和选项 D 错误在于使用了错误的关键字 CHANGE,选项 C 缺少子句关键字 SET。(6).根据“歌手”表建立视图 myview,视图中含有包括了“歌于号”左边第一位是“1”的所有记录,正确的 SQL 语句是( )。(分数:2.00)A.CREATE VIEW myview AS SELECT* FROM 歌手 WHERE LEFT(歌手号,1)=“1“ B.CREATE VI
38、EW myview AS SELECT* FROM 歌手 WHERE LIKE(“1”,歌手号)C.CREATE VIEW myview SELECT *PROM 歌手 WHERE LEFT(歌手号,1)=“1”D.CREATE VIEW myview SELECT *FROM 歌手 WHERE LIKE(“1”,歌手号)解析:解析 SQL 中创建视图的命令格式是:CREATE VIEW view_ hame ) cloumn_ name, column name.)AS select_ statment,在本题中,因为其缺少 AS 关键字,故选项 C 及选项 D 错误,选项 B 错误,因为使
39、用了错误的函数 LIKE。(7).删除视图 myview 的命令是( )。(分数:2.00)A.DELETE myview VIEWB.DELETE myviewC.DROP myview VIEWD.DROP VIEW myview 解析:解析 删除视图的命令格式为 DROP VIEW视图名,用来删除指定名称视图。(8).假设 temp. dbf 数据表中有两个字段“歌手号”和“最后得分”。下面程序段的功能是:将 temp. dbf 中歌手的“最后得分”填入“歌手”表对应歌手的“最后得分”字段中(假设已增加了该字段)。在下划线处应该填写的 SQL 语句是( )。USE 歌手 DO WHILE
40、. NOT. EOF () _ REPLACE 歌手 .最后得分 WITH a2 SKIPENDDO(分数:2.00)A.SELECT *FROM temp WHERE temp .歌手号=歌于 .歌手号 TO ARRAY aB.SELECT *FROM temp WHERE temp .歌手号=歌手 .歌手号 INTO ARRAY a C.SELECT *FROM temp WHERE temp .歌手号=歌手 .歌手号 TO FILE sD.SELECT *FROM temp WHERE temp .歌手号=歌手 .歌手号 INTO FILE a解析:解析 根据题干可以看出,该程序首先将“
41、歌手”表中当前记录的歌手号在 temp 表中的记录值存放在数组 a 中,然后再将其“最后得分”字段的值替换为数组中的值,所以该处应当填写如何将 temp 表中相应记录值输出的数组 a 中的 SQL 语句。在 SQL 语句中,指定在数组中保存查询结果的子句为 INTO ARRAY数组名,所以选择选项 B。(9).与“SELECT DISTINCT 歌手号 FROM 歌手 WHERE 最后得分=ALL;(SELECT 最后得分 FROM 歌手 WHERE SUBSTR (歌手号,1,1)=“2”)”等价的 SQL 语句是( )。(分数:2.00)A.SELECT DISTINCT 歌手号 FROM
42、 歌手 WHERE 最后得分=;(SELECT MAX(最后得分)FROM 歌手 WHERE SUBSTR(歌手号,1,1)=“2”) B.SELECT DISTINCT 歌手号 FROM 歌手 WHERE 最后得分=;(SELECT MIN(最后得分)FROM 歌手 WHERE SUBSTR(歌手号,1,1)=“2”)C.SELECT DISTINCT 歌手号 FROM 歌手 WHERE 最后得分=AVY;(SELECT 最后得分 FROM 歌手 WHERE SUBSTR(歌于号,1,1)=“2”)D.SELECT DISTINCT 歌手号 FROM 歌手 WHERE 最后得分=SOME;(
43、SELECT 最后得分 FROM 歌手 WHERE SUBSTR (歌手号,1,1)=“2”)解析:解析 题干中的 SQL 语句的功能是:查询“最后得分”比“歌手号”字段中第一个字符为“2”(SUBSTR(歌于号,1,1)=“2”)的歌手的“最后得分”高的歌手号。在本题中 4 个选项中只有选项 A 中的查询条件与此等价,用(SELECT MAX(最后得分)FROM. WHERE.)实现选择出最高的最后得分。选项 B 的查询条件表示最后得分大于“歌手号”字段中第一个字符为“2”的歌手的最低的“最后得分”。选项 C和 D 中的 ANY 和 SOME 是同义词,表示查询出只要“歌手号”字段中第一个字
44、符为“2”的歌手任何一个最后得分高的记录即可。11.如果指定参照完整性的删除规则为“级联”,则当删除父表中的记录时,( )。(分数:2.00)A.系统自动备份父表中被删除记录到一个新表中B.若子表中有相关记录,则禁止删除父表中记录C.会自动删除子表中所有相关记录 D.不作参照完整性检查,删除父表记录与子表无关解析:解析 在 Visual FoxPro 中对参照完整性的删除规则所作的规定是:如果指定参照完整性的删除规则为“级联”,则当删除父表中的记录时,会自动删除子表中所有相关记录。12.下面选项中小属于面向对象程序设计特征的是( )。(分数:2.00)A.继承性B.多态性C.类比性 D.封装性
45、解析:解析 面向对象方法具有封装性、继承性、多态性几大特点。13.当内存变量与字段名变量重名时,系统优先处理( )。(分数:2.00)A.内存变量B.字段名变量 C.全局变量D.局部变量解析:解析 变量有内存变量和字段名变量两种,当这两种类型的变量重名时,在 Visual FoxPro 系统默认字段名变量优先。14.下列叙述中错误的是( )。(分数:2.00)A.在数据库系统中,数据的物理结构必须与逻辑结构一致 B.数据库技术的根本目标是要解决数据的共享问题C.数据库设计是指在已有数据库管理系统的基础上建立数据库D.数据库系统需要操作系统的支持解析:解析 数据的逻辑结构是数据间关系的描述,它只
46、抽象地反映数据元素之间的逻辑关系,而不管其在计算机中的存储方式。数据的存储结构又叫物理结构,是逻辑结构在计算机存储器里的实现。这两者之间没有必然的联系。选项 A 的说法是错误的。15.以下关于“视图”的描述正确的是( )。(分数:2.00)A.视图保存在项目文件中B.视图保存在数据库中 C.视图保存在表文件中D.视图保存在视图文件中解析:解析 视图是一个定制的、在数据库表的基础上创建的一种虚拟逻辑表,视图创建后,保存在数据库中。16.单击项目上的“连编”,则可以生成( )文件。(分数:2.00)A.BATB.APP C.DATD.DAC解析:解析 要生成应用程序,可以单击项目上的“连编”,并选
47、择“连编应用程序”按钮,则可以生成应用程序 APP 文件。17.在结构化程序设计中,模块划分的原则是( )。(分数:2.00)A.各模块应包括尽量多的功能B.各模块的规模应尽量大C.各模块之间的联系应尽量紧密D.模块内具有高内聚度、模块间具有低耦合度 解析:解析 模块划分的原则有:模块的功能应该可预测,如果包含的功能太多,则不能体现模块化设计的特点,选项 A 错误。模块规模应适中,一个模块的规模不应过大,选项 B 错误。改进软件结构,提高模块独立性。通过模块的分解或合并,力求降低耦合提高内聚,所以选项 C 错误,选项 D 正确。18.数据库表的字段可以定义规则,规则是( )。(分数:2.00)
48、A.逻辑表达式 B.字符表达式C.数值表达式D.前 3 种说法都不对解析:解析 用户可以为数据库表字段定义规则,规则是逻辑表达式。19.运行程序:AA=0FORI=2TO 100 STEP 2 AA=AA+IENDFOR? AARETURN 该程序得到的结果为( )。(分数:2.00)A.1100 中奇数的和B.1100 中偶数的和 C.1100 中所有数的和D.没有意义解析:解析 在 FOR 循环中的循环变量 i 被初始化为 2,在 FOR 语句中又规定了步长 STEP 的值为 2,意思为每执行一次循环体,I 的值便加 2,因此程序中所有的 I 值都为偶数,AA 的值为一个累加的数字,所以此题中所求为 1100 中偶数的和。20.下列叙述中正确的是( )。(分数:2.00)A.在面向对象的程序设计中,各个对象之间具有密切的联系B.在面向对象的程序设计中,各个对象都是公用的C.在面向对象的程序设计中,各个对象之间相对独立,相互依赖性小 D.上述 3