1、二级 VISUAL+FOXPRO-79 及答案解析(总分:99.99,做题时间:90 分钟)一、B基本操作题/B(总题数:1,分数:40.00)在下完成如下操作(自由表 employee 中存放着职员的有关数据):(分数:40.00)(1).利用表设计器为 employlee 表创建一个普通索引,索引表达式为“姓名”,索引名为 xm。 (分数:10.00)_(2).打开考生目录下的表单文件 formone.scx,然后设置表单的 Load 事件代码,即打开 employee 表,并将索引 xm 设置为当前索引。 (分数:10.00)_(3).在 formone 表单中添加一个列表框,并设置列表
2、框的属性,即名称为 mylist,高度为 60,可以多重选择。 (分数:10.00)_(4).设置 formone 表单中 mylist 列表框的有关属性,其中 RowSourceType 属性为字段,使得当表单运行时,列表框内显示 employee 表中姓名字段的值。 (分数:10.00)_二、B简单应用题/B(总题数:1,分数:20.00)在考生文件夹下完成以下简单应用(自由表 order 中存放着订单的有关数据):(分数:20.00)(1).利用查询设计器创建查询,从 employee 和 order 表中查询金额最高的 10 笔订单。查询结果依次包含订单号、姓名、签订日期、金额 4 个
3、字段;各记录按金额降序排序;查询去向为表 tableone。最后将查询保存在 queryone.qpr 文件中,并运行该查询。 (分数:10.00)_(2).首先创建数据库 order_m,并向其中添加 employee 表和 order 表。然后在数据库中创建视图viewone,利用该视图只能查询组别为 1 的职员的有关数据;查询结果依次包含职员号、姓名、订单号、签订日期、金额 5 个字段;各记录按职员号升序排序,若职员号相同则按金额降序排序。最后利用刚创建的视图查询视图中的全部信息,并将查询结果存放在表 tabletwo 中。 (分数:10.00)_三、B综合应用题/B(总题数:1,分数:
4、40.00)在考生文件夹下完成下列操作:(分数:39.99)(1).创建自由表 tablethree,其结构如下。 姓名 C(6) 最高金额 N(6,2) 最低金额 N(6,2)(分数:13.33)_(2).设计一个进行查询统计的表单 formtwo.scx,其界面如下图所示。其中表格的名称为 Grid1,“查询统计”按钮的名称为 Command1,“退出”按钮的名称为 Command2,文本框的名称为 Text1。 (分数:13.33)_(3).运行上面创建的表单 formtwo,然后依次查询统计“赵小青”和“吴伟军”两位职员所签订单的有关金额。执行完后,表 tablethree 中应该包含
5、两条相应的记录。 (分数:13.33)_二级 VISUAL+FOXPRO-79 答案解析(总分:99.99,做题时间:90 分钟)一、B基本操作题/B(总题数:1,分数:40.00)在下完成如下操作(自由表 employee 中存放着职员的有关数据):(分数:40.00)(1).利用表设计器为 employlee 表创建一个普通索引,索引表达式为“姓名”,索引名为 xm。 (分数:10.00)_正确答案:(打开 employee 表的表设计器,单击“索引”选项卡,在索引名处输入“xm”,类型选择“普通索引”,表达式为“姓名”。答案考生文件夹)解析:(2).打开考生目录下的表单文件 formon
6、e.scx,然后设置表单的 Load 事件代码,即打开 employee 表,并将索引 xm 设置为当前索引。 (分数:10.00)_正确答案:(打开表单文件 formone.scx,然后设置表单的 Load 事件代码如下: USE employee.dbf SET order TO xm)解析:(3).在 formone 表单中添加一个列表框,并设置列表框的属性,即名称为 mylist,高度为 60,可以多重选择。 (分数:10.00)_正确答案:(选中控件工具栏里的“列表框”,在表单设计器中拖动鼠标,这样在表单上得到一个“列表框”对象 List1,设置它的 Name 属性为“mylist”
7、、Height 属性为“60”、MultiSelect 属性为.T.。)解析:(4).设置 formone 表单中 mylist 列表框的有关属性,其中 RowSourceType 属性为字段,使得当表单运行时,列表框内显示 employee 表中姓名字段的值。 (分数:10.00)_正确答案:(在属性窗口中设置 mylist 列表框的 RowSourceType 属性为“6-字段”、RowSource 属性为“employee.姓名”。)解析:二、B简单应用题/B(总题数:1,分数:20.00)在考生文件夹下完成以下简单应用(自由表 order 中存放着订单的有关数据):(分数:20.00)
8、(1).利用查询设计器创建查询,从 employee 和 order 表中查询金额最高的 10 笔订单。查询结果依次包含订单号、姓名、签订日期、金额 4 个字段;各记录按金额降序排序;查询去向为表 tableone。最后将查询保存在 queryone.qpr 文件中,并运行该查询。 (分数:10.00)_正确答案:(步骤 1:单击“新建”按钮,在弹出的对话框中选择“新建查询”,将 employee 和 order 表添加到查询设计器中。 步骤 2:在查询设计器下方的“字段”选项卡中选中并添加题中要求的字段。 步骤 3:在“排序依据”选项卡中选择字段“金额”,按降序排列。 步骤 4:在“杂项”选
9、项卡中选择记录个数为 10。 步骤 5:选择菜单栏中的“查询”“查询去向”命令,在弹出的“查询去向”对话框中选择表,并在表名处输入 tableone。 步骤 6:保存查询,输入查询文件名“queryone.qpr”,单击工具栏上的“运行”按钮后关闭查询设计器。)解析:(2).首先创建数据库 order_m,并向其中添加 employee 表和 order 表。然后在数据库中创建视图viewone,利用该视图只能查询组别为 1 的职员的有关数据;查询结果依次包含职员号、姓名、订单号、签订日期、金额 5 个字段;各记录按职员号升序排序,若职员号相同则按金额降序排序。最后利用刚创建的视图查询视图中的
10、全部信息,并将查询结果存放在表 tabletwo 中。 (分数:10.00)_正确答案:(步骤 1:“选择文件”“新建”“数据库”“新建文件命令”,输入数据库名为“order_m”对文件进行保存。 步骤 2:向新建的数据库中依次添加 employee 和 order 两个表。 步骤3:新建一个视图,在“添加表或视图”对话框中添加 employee 表和 order 表到视图设计器中。 步骤4:在“字段”选项卡中选择职员号、姓名、订单号、签订日期、金额 5 个字段;切换到“筛选”选项卡,设置筛选条件为“组别=1”,切换到“排序依据”选项卡中,选择字段“职员号”,在“排序选项”处选择“升序”,按“
11、金额”降序排序,保存视图为 viewone。 步骤 5:新建一个查询,在“添加表或视图”对话框中选择 viewone 视图,在字段中选择所有字段,设置查询去向为表 tabletwo,然后保存并运行该查询,文件名为默认。)解析:三、B综合应用题/B(总题数:1,分数:40.00)在考生文件夹下完成下列操作:(分数:39.99)(1).创建自由表 tablethree,其结构如下。 姓名 C(6) 最高金额 N(6,2) 最低金额 N(6,2)(分数:13.33)_正确答案:(步骤 1:单击常用工具栏中的“新建”按钮,系统弹出“新建”对话框,在“文件类型”中选择表,在弹出的对话框中选择“新建表”,
12、并在弹出的“创建”对话框中选定考生文件夹,输入表名“tablethree”后单击“保存”按钮。 步骤 2:在弹出的表设计器中按题目要求依次输入各个字段的定义,单击“确定”按钮,保存表结构(不用输入记录)。)解析:(2).设计一个进行查询统计的表单 formtwo.scx,其界面如下图所示。其中表格的名称为 Grid1,“查询统计”按钮的名称为 Command1,“退出”按钮的名称为 Command2,文本框的名称为 Text1。 (分数:13.33)_正确答案:(步骤 1:单击常用工具栏中的“新建”按钮,系统弹出“新建”对话框,在“文件类型”中选择“表单”,在弹出的对话框中选择“新建文件”。
13、步骤 2:在表单中按题目要求添加标签、文本框、命令按钮和表格控件,并进行适当的布局和大小调整。 步骤 3:根据题目要求设置各标签、文本框、命令按钮以及表格的属性值如下。 命令按钮 1 的 Caption 属性为“查询统计”。 命令按钮 2 的 Caption 属性为“退出”。 标签的 Caption 属性为“请输入姓名”。 表格的 RecordSourceType 属性为“4-SQL 说明”。 表格的 ColumnCount 属性为“2”。 Header1 的 Caption 属性为“订单号”。 Header2 的Caption 属性为“金额”。 步骤 4:编写“查询统计”按钮的 Click
14、事件代码。 *“查询统计”按钮的 Click 事件代码* ThisForm.Grid1.RecordSource=“SELECT order.订单号, order.金额 FROM order INNER JOIN employee ON order.职员号=employee.职员号 WHERE employee.姓名=ALLTRIM(thisform.Text1.Value)“ SELECT Employee.姓名, MAX(Order.金额)AS 最高金额, MIN(Order.金额)AS 最低金额, AVG(Order.金额)AS 平均金额; FROM employee INNER JOI
15、N order; ON Employee.职员号=Order.职员号; WHERE employee.姓名=ALLTRIM(thisform.Text1.Value); GROUP BY Employee.职员号; INTO cursor temp INSERT INTO tablethree(姓名, 最高金额, 最低金额, 平均金额)VALUES(temp.姓名, temp.最高金额, temp.最低金额, temp.平均金额) * 编写“退出”按钮的 Click 事件代码如下。 ThisForm.Release 步骤 5:以 formtwo.scx 为文件名保存表单并运行,然后关闭表单设计器窗口。)解析:(3).运行上面创建的表单 formtwo,然后依次查询统计“赵小青”和“吴伟军”两位职员所签订单的有关金额。执行完后,表 tablethree 中应该包含两条相应的记录。 (分数:13.33)_正确答案:(运行表单 formtwo,依次查询统计“赵小青”和“吴伟军”两位职员所签订单的相关金额,即在“请输入姓名”下的文本框中分别输入题目要求的姓名,并单击“查询统计”按钮,将记录保存在表tablethree 中。 )解析: