1、二级 VISUAL+FOXPRO 机试-41 及答案解析(总分:100.00,做题时间:90 分钟)一、一 基本操作题(总题数:1,分数:30.00)1.(1)在下建立数据库 BOOKAUTH.DBC,把表 BOOKS 和 AUTHORS 添加到该数据库中。(2)为 AUTHORS 表建立主索引,索引名为“PK”,索引表达式为“作者编号”。(3)为 BOOKS 表建立两个普通索引,第一个索引名为“PK”,索引表达式为“图书编号”;第二个索引名和索引表达式均为“作者编号”。(4)建立 AUTHORS 表和 BOOKS 表之间的永久性联系。(分数:30.00)_二、二 简单应用题(总题数:1,分数
2、:40.00)2.在考生文件夹下完成如下简单应用。(1)打开表单 MYFORM4_4,把表单(名称为 Form1)标题改为“欢迎您”,将文本“欢迎您访问系统”(名称为 Label1 的标签)改为 25 号黑体。最后在表单上添加“关闭”(名称为 Command1)命令按钮,单击此按钮关闭表单。保存并运行表单。(2)设计一个表单 MYFORM4,表单中有两个命令按钮“查询”和“退出”(名称分别为 Command1 和Command2)。单击“查询”命令按钮,查询 BOOKAUTH 数据库中出版过 3 本以上(含 3 本)图书的作者信息,查询信息包括作者姓名和所在城市;查询结果按作者姓名升序保存在表
3、 NEW_VIEW4 中。单击“退出”命令按钮关闭表单。注意:完成表单设计后要运行表单的所有功能。(分数:40.00)_三、三 综合应用题(总题数:1,分数:30.00)3.(1)在考生文件夹下,将 BOOKS 表中所有书名中含有“计算机”3 个字的图书复制到 BOOKS_BAK 表中,以下操作均在 BOOKS_BAK 表中完成。(2)复制后的图书价格在原价格的基础上降低 5%。(3)从图书均价高于 25 元(含 25)的出版社中,查询并显示图书均价最低的出版社名称及均价,查询结果保存在 new_table4 表中(字段名为出版单位和均价)。(分数:30.00)_二级 VISUAL+FOXPR
4、O 机试-41 答案解析(总分:100.00,做题时间:90 分钟)一、一 基本操作题(总题数:1,分数:30.00)1.(1)在下建立数据库 BOOKAUTH.DBC,把表 BOOKS 和 AUTHORS 添加到该数据库中。(2)为 AUTHORS 表建立主索引,索引名为“PK”,索引表达式为“作者编号”。(3)为 BOOKS 表建立两个普通索引,第一个索引名为“PK”,索引表达式为“图书编号”;第二个索引名和索引表达式均为“作者编号”。(4)建立 AUTHORS 表和 BOOKS 表之间的永久性联系。(分数:30.00)_正确答案:(微步骤 (1)新建一个数据库,根据题目要求向数据库中添加
5、表,具体操作步骤如图 3.1 所示。(2)为“AUTHORS”表建立主索引,如图 3.2 所示。(3)为 BOOKS 表建立两个普通索引,如图 3.3 所示。(4)为 AUTHORS 表和 BOOKS 表建立永久联系,如图 3.4 所示。)解析:解析 本题关键字有:数据库、向数据库中添加表、为表建立索引以及建立表间联系。通过菜单“文件”|“新建”或工具栏“新建”命令按钮来建立数据库,随后在数据库里进行表的添加操作,在表设计器中进行为表建立索引,在数据库设计器中为两张表建立永久性联系需要,要注意在表的对应字段上建立主索引与普通索引的操作。二、二 简单应用题(总题数:1,分数:40.00)2.在考
6、生文件夹下完成如下简单应用。(1)打开表单 MYFORM4_4,把表单(名称为 Form1)标题改为“欢迎您”,将文本“欢迎您访问系统”(名称为 Label1 的标签)改为 25 号黑体。最后在表单上添加“关闭”(名称为 Command1)命令按钮,单击此按钮关闭表单。保存并运行表单。(2)设计一个表单 MYFORM4,表单中有两个命令按钮“查询”和“退出”(名称分别为 Command1 和Command2)。单击“查询”命令按钮,查询 BOOKAUTH 数据库中出版过 3 本以上(含 3 本)图书的作者信息,查询信息包括作者姓名和所在城市;查询结果按作者姓名升序保存在表 NEW_VIEW4
7、中。单击“退出”命令按钮关闭表单。注意:完成表单设计后要运行表单的所有功能。(分数:40.00)_正确答案:(微步骤 (1)操作步骤如下。步骤 1:打开名为 MYFORM4_4 的表单,根据题目要求修改表单标题,步骤如图 3.5 所示。步骤 2:在表单设计器窗口中,根据题目要求修改文本的相关属性,具体步骤如图 3.6 所示。步骤 3:添加一个命令按钮,将 Caption 属性设为“关闭”,在 Click 事件中输入代码“thisform.release”,具体步骤如图 3.7 所示。(2)操作步骤如下。步骤 1:根据题目要求新建一个表单,命名为“MYFORM4”,添加名控件并设置名控件相关属性
8、,步骤如图 3.8 所示。步骤 2:编写两个命令按钮的 Click 事件代码。*“查询”按钮的 Click 事件代码*SELECT 作者姓名,所在城市;FROM authors;WHERE 作者编号 IN(SELECT 作者编号 FROM books GROUP BY 作者编号 HAVING COUNT(*)=3);ORDERBY 作者姓名;INTO TABLE NEW_VIEW4*“退出”按钮的 Click 事件代码*THISFORM RELEASE*步骤 3:保存表单并命名为“MYFORM4”,然后运行表单,如图 3.9 所示。)解析:解析 本题关键字有:表单控件的属性以及 SQL 查询语
9、句。设置标签中文本的字号标签控件的FontSize 属性,设置标签中文本的字体使用标签控件的 FoncName 属性。三、三 综合应用题(总题数:1,分数:30.00)3.(1)在考生文件夹下,将 BOOKS 表中所有书名中含有“计算机”3 个字的图书复制到 BOOKS_BAK 表中,以下操作均在 BOOKS_BAK 表中完成。(2)复制后的图书价格在原价格的基础上降低 5%。(3)从图书均价高于 25 元(含 25)的出版社中,查询并显示图书均价最低的出版社名称及均价,查询结果保存在 new_table4 表中(字段名为出版单位和均价)。(分数:30.00)_正确答案:(微步骤 步骤 1:将
10、 BOOKS 表中满足条件的记录复制到 BOOKS_BAK 表中,并按 Enter 键,在命令窗口中输入如下代码。*SELECT * FROM BOOKS WHERE 书名 LIKE “% 计算机 %“ INTO TABLE BOOKS BAK*步骤 2:在命令窗口中输入如下代码,更新 BOOKS_BAK 表中的价格字段,并按 Enter 键。*UPDATE BOOKS_BAK SET 价格=价格 * (1-005)*步骤 3:在命令窗口中输入如下代码,并按 Enter 键。*选择查询字段,通过 AS 短语指定显示字段,avg()函数用于求平均值SELECT TOP 1 Books_bak.
11、出版单位,avg(books bak.价格) as 均价;指定字段来源FROM books_bak;Group By 子句用于按出版单位分组GROUP BY Books_bak 出版单位;Having 子句限定分组条件HAVING 均价=25;查询结果按均价升序排列ORDER BY 2;将查询结果存储到 new_table4.dbf 中INTO TABLE new_table4 dbf*提示:建立一个查询然后查看其 SQL 语句也可获得步骤 1 与步骤 3 的代码。其中,步骤 3 通过查询设计器来完成会更简单。提示:在 BOOKS_BAK 表的基础上进行步骤 2 和步骤 3 的操作;在步骤 3
12、 中需注意“TOP”短语的使用,其基本格式为“TOP nExprPERCENT”以此短语来查询均价最低的记录。该短语中,nExDr 是数字表达式,如果不使用 PERCENT,说明显示前几个记录,如果使用 PERCENT,说明显示结果中前百分之几的记录。)解析:解析 本题关键字有:SQL 语句的复制、修改与查询功能。其中:SQL SELECT 语句可以实现数据查询的功能,格式为:SELECT 字段名列表 FROM 表名 WHERE 条件 ORDER BY 字段名 INTOSQL UPDATE 语句可以实现数据更新的功能,格式为:UPDATE 表名 SET 字段名 1=表达式 1,字段名 2=表达式 2