1、二级 VISUAL+FOXPRO 机试 12 及答案解析(总分:100.00,做题时间:90 分钟)一、B一 基本操作题/B(总题数:1,分数:30.00)1.在考生文件夹下完成下列基本操作: (1)建立一个名称为“外汇管理”的数据库。 (2)将表currency_s1.dbf 和 rate_ exchange. dbf 添加到新建立的数据库中。 (3)将表 rate_exchange. dbf 中“买出价”字段的名称改为“现钞卖出价”。 (4)通过“外币代码”字段建立表 rate_exchange. dbf 和currency_s1.dbf 之间的一对多永久联系(需要首先建立相关索引)。(分
2、数:30.00)_二、B二 简单应用题/B(总题数:1,分数:40.00)2.(1)创建一个名为 myview 的视图,该视图的 SELECT 语句查询 salary 数据库中 gz 表(雇员工资表)的“部门编号”、“雇员编号”、“姓名”、“工资”、“补贴”、“奖励”、“失业保险”、“医疗统筹”和“实发工资”,其中“实发工资”由“工资”、“补贴”和“奖励”三项相加,再减去“失业保险”和“医疗统筹”得出,请按“部门号”降序排序,最后将定义视图的命令放到命令文件 gz. prg 中并执行该程序。 (2)设计一个名为 my 的表单,表单标题为“工资浏览”,表单中显示 salary 数据库中 gz 表
3、的记录,供用户浏览。在该表单的右下方有一个命令按钮,名称为 Command1,标题为“关闭”,当单击该按钮时退出表单。(分数:40.00)_三、B三 综合应用题/B(总题数:1,分数:30.00)3.仓库管理数据库中含有 3 个数据库表“订购单”、“职工”和“供应商”。设计一个表单 myf,表单的标题为“仓库管理”。表单左侧有标题为“请输入订购单号”标签,和用于输入订购单号的文本框,以及“查询”和“关闭”2 个命令按钮和 1 个表格控件。 表单运行时,用户在文本框内输入“订购单号” (如 OR73),单击“查询”按钮,查询出对应的订购单的“供应商名”、“职工号”、“仓库号”和“订购日期”。表单
4、的表格控件用于显示查询结果。单击“关闭”按钮,关闭表单。(分数:30.00)_二级 VISUAL+FOXPRO 机试 12 答案解析(总分:100.00,做题时间:90 分钟)一、B一 基本操作题/B(总题数:1,分数:30.00)1.在考生文件夹下完成下列基本操作: (1)建立一个名称为“外汇管理”的数据库。 (2)将表currency_s1.dbf 和 rate_ exchange. dbf 添加到新建立的数据库中。 (3)将表 rate_exchange. dbf 中“买出价”字段的名称改为“现钞卖出价”。 (4)通过“外币代码”字段建立表 rate_exchange. dbf 和cur
5、rency_s1.dbf 之间的一对多永久联系(需要首先建立相关索引)。(分数:30.00)_正确答案:()解析:(1)在命令窗口输入命令:MODIFY DATABASE 外汇管理,新建数据库。 (2)右击新建的数据库,选择“添加表”快捷菜单命令,在弹出的“打开”对话框中,将考生文件夹下的自由表 currency_s1.DBF 和 rate_ exchange. dbf 分别添加到数据库中。 (3)在数据库设计器中,右击 rate_ exchange. dbf 数据表,选择“修改”快捷菜单命令,系统弹出表设计器,选中“买出价”字段,将字段名称改为“现钞卖出价”。 (4)在数据库设计器中,右击
6、rate_ exchange 数据表,选择“修改”快捷菜单命令,打开表设计器,在“字段”选项卡中为“外币代码”字段选择一个索引排序,然后单击“索引”选项卡,选择索引类型为“主索引”,以同样的方法为 currency_s1 dbf 表建立一个普通索引,索引项为“外币代码”。返回数据库设计器,将 rate_exchange 表中“索引”下面的“外币代码”主索引字段拖到 currency_s1.dbf 表中“索引”下面的“外币代码”索引字段上,建立 currency_s1.dbf 和rate_exchange. dbf 两个表之间永久性联系。 解析 本大题主要考查的是数据库和数据表之间的联系,以及字
7、段索引的建立。新建数据库可以通过菜单命令、工具栏按钮或直接输入命令来建立,添加和修改数据库中表的以及建大表之间的联系,可以通过数据库设计器来完成,建立表索引以及修改表结构可以在数据表设计器中完成。二、B二 简单应用题/B(总题数:1,分数:40.00)2.(1)创建一个名为 myview 的视图,该视图的 SELECT 语句查询 salary 数据库中 gz 表(雇员工资表)的“部门编号”、“雇员编号”、“姓名”、“工资”、“补贴”、“奖励”、“失业保险”、“医疗统筹”和“实发工资”,其中“实发工资”由“工资”、“补贴”和“奖励”三项相加,再减去“失业保险”和“医疗统筹”得出,请按“部门号”降
8、序排序,最后将定义视图的命令放到命令文件 gz. prg 中并执行该程序。 (2)设计一个名为 my 的表单,表单标题为“工资浏览”,表单中显示 salary 数据库中 gz 表的记录,供用户浏览。在该表单的右下方有一个命令按钮,名称为 Command1,标题为“关闭”,当单击该按钮时退出表单。(分数:40.00)_正确答案:()解析:(1)在命令窗口首先输入命令:OPEN DATABASE salary,打开数据库文件。 接着在命令窗口输入命令:MODIFY COMMAND gz,打开程序编辑器,编写如下程序段: *文件 gz. prg 中的程序段* CREATE VIEW myview A
9、S; SELECT gz.部门编号,gz.雇员编号,gz.姓名,gz. 工资; gz.补贴,gz.奖励,gz.失业保险,gz.医疗统筹; gz.工资+gz.补贴+9z.奖励-gz.医疗统筹-gz.失业保险 AS 实发工资; FROM salary! gz; ORDER BY gz.部门编号 DESC * 在命令窗口首先输入命令:DO gz,运行程序。视图运行结果如图 3-104 所示。 图 3-104 (2)从菜单栏里单击“文件”并选择“新建”,或直接单击工具栏上的“新建”图标,在弹出的对话框中文件类型选择“表单”,单击对话框右边的“新建文件”按钮,弹出了 Form1 的表单设计器,单击工具栏
10、上的“保存”图标,以“my”命名保存在考生文件夹下。 在表单设计器中,鼠标右键单击空白表单,选择“数据环境”快捷菜单命令,打开表单的数据环境,将数据表文件 gz 添加到数据环境中,将数据环境中的 gz 表拖放到表单中(应选中数据表的标题栏进行拖放),可看到在表单中出现一个表格控件,此时实现了 gz 表的窗口式输入界面。 将表单的 Caption 属性值改为“工资浏览”。最后在“表单控件工具栏”中,选中命令按钮控件添加到表单中,在属性对话框修改该命令按钮的 Caption 属性值为“关闭”,双击该命令按钮,在 Click 事件中输入程序:Thisform. Release。 在命令窗口输入命令:
11、DO FORM my,查看表单运行结果,如图 3-105 所示。 三、B三 综合应用题/B(总题数:1,分数:30.00)3.仓库管理数据库中含有 3 个数据库表“订购单”、“职工”和“供应商”。设计一个表单 myf,表单的标题为“仓库管理”。表单左侧有标题为“请输入订购单号”标签,和用于输入订购单号的文本框,以及“查询”和“关闭”2 个命令按钮和 1 个表格控件。 表单运行时,用户在文本框内输入“订购单号” (如 OR73),单击“查询”按钮,查询出对应的订购单的“供应商名”、“职工号”、“仓库号”和“订购日期”。表单的表格控件用于显示查询结果。单击“关闭”按钮,关闭表单。(分数:30.00
12、)_正确答案:()解析:单击“文件”菜单中的“新建”,在类型选择框中选择“表单”,单击“新建文件”按钮,打开表单设计器。在属性窗口中设置表单的 Caption 属性为“仓库管理”,从“表单控件”工具栏中选择 1 个文本框,1 个标签,1 个表格控件,2 个命令按钮放置在表单上。在属性面板中分别设置两个命令按钮的Caption 属性分别为“查询”和“关闭”,设置标签的 Caption 属性值为“请输入订购单号”。 双击命令按钮“查询”,编写该控件的 Click 事件,程序代码如下: *命令按钮 Command1(查询)的 Click 事件代码* SELECT 供应商名,订购单职工号,仓库号,订购日期; FROM 订购单,供应商,职工;WHERE 订购单.供应商号=供应商.供应商号; AND 职工.职工号=订购单.职工号; AND 订购单号=ALLTRIM(Thisform.Text1.value); INTO CURSOR temp Thisform.Grid1.RecordSourceType=1 Thisform.Grid1.RecordSource=“temp“ * 以同样的方法为“关闭”命令按钮编写 Click 事件代码:Thisform. Release。 保存表单文件为 myf. scx 到考生文件夹下,表单运行结果如图 3-106 所示。