1、国家二级 VF 机试(操作题)-试卷 265 及答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.在考生文件夹下完成如下操作:(1)建立数据库 orders_manage,并将自由表 employee 和 orders 添加到新建的数据库中;(2)建立必要的索引,并建立表 employee 和表 orders 之间的永久联系;(3)建立项目“职工订单管理“并把新建的数据库 orders_manage 添加到新建的项目中;(4)在项目管理器中建立本地视图 view_ca,视图内容为职工号、姓名和年龄,按年龄降序排序(年龄表达式是 YEAR(DATE(
2、)YEAR(出生日期)。(分数:2.00)_二、简单应用题(总题数:1,分数:2.00)2.在考生文件夹下完成如下简单应用:(1)使用向导建立一对多报表 report_c,选择父表 employee 中仓库号、职工号、姓名字段以及子表 orders 中除职工号以外的全部字段,报表按仓库号升序排序,报表样式选择简报式,报表标题是“职工订单汇总“。(2)使用 SQL 命令建立视图 view_cb,视图中显示每个职工签订的所有订单总金额(签订订单金额合计)大于 15000 元的职工号、姓名及其所签订订单的总金额,结果按总金额升序排序;同时把所用命令保存在文本文件 cmd_cb.txt 中。(分数:2
3、.00)_三、综合应用题(总题数:1,分数:2.00)3.建立一个表单,表单文件名和表单控件名均为 myform_c,表单标题为“职工订单信息“,表单界面如图所示,共有三个文本为职工号(Label1)、姓名(Label2)和性别(Label3)的标签,还有三个对应的文本框Text1、Text2 和 Text3,和一个表格控件 Grdorders。其它功能如下:(1)程序运行时,在文本框 Text1中输入一个职工号的值,并单击 DO(Command1)按钮,然后在 Text2 文本框中显示职工的姓名,在 Text3文本框中显示职工的性别,在表格控件(Grdorders)中显示该职工的订单(ord
4、ers 表)的信息。(2)单击Close 命令按钮(Command2)关闭表单。注意:在表单设计器中将表格控件 Grdorders 的数据源类型设置为SQL 语句。 (分数:2.00)_国家二级 VF 机试(操作题)-试卷 265 答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.在考生文件夹下完成如下操作:(1)建立数据库 orders_manage,并将自由表 employee 和 orders 添加到新建的数据库中;(2)建立必要的索引,并建立表 employee 和表 orders 之间的永久联系;(3)建立项目“职工订单管理“并把新建的数
5、据库 orders_manage 添加到新建的项目中;(4)在项目管理器中建立本地视图 view_ca,视图内容为职工号、姓名和年龄,按年龄降序排序(年龄表达式是 YEAR(DATE()YEAR(出生日期)。(分数:2.00)_正确答案:(正确答案:【操作步骤】 (1)步骤 1:单击常用工具栏中的“新建“按钮。 步骤 2:在“新建“对话框中,选择“数据库“单选钮,再按“新建文件“按钮,弹出“创建“对话框。 步骤 3:在“创建“对话框中输入数据库名“orders_manage“,再按回车键或按“保存“按钮,这样就可以建立数据库了,并出现“数据库设计器-orders_manage“对话框。 步骤
6、4:在“数据库设计器-orders_manage“中单击鼠标右键,显示右击菜单,选择“添加表“命令,并选择相应的表文件即可(employee 和 orders)。 (2)步骤 1:单击常用工具栏中的“打开“按钮,选择打开数据库文件 orders_manage。 步骤 2:在“数据库设计器-orders_manage“中,选择表“employee“并单击鼠标右键,选择“修改“命令,在“表设计器-employee.dbf“中,单击“索引“选项卡,然后输入索引名“职工号“,选择类型为“主索引“,表达式为“职工号“,最后单击“确定“按钮,再单击“是(Y)“这样索引就建立了。 步骤 3:在“数据库设计器
7、-orders_manage“中,选择表“orders“并单击鼠标右键,选择“修改“命令,在“表设计器-orders.dbf“中,单击“索引“选项卡,然后输入索引名“职工号“,选择类型为“普通的索引“,表达式为“职工号“,最后单击“确定“按钮,再单击“是(Y)“这样索引就建立了。 步骤 4:在“数据库设计器-orders_manage“中,然后选择“employee“表中主索引键“职工号“并按住不放,然后移动鼠标拖到“orders“表中的索引键为“职工号“处,松开鼠标即可。 (3)步骤1:单击常用工具栏中的“新建“按钮。 步骤 2:在“新建“对话框中,选择“项目“单选钮,再按“新建文件“按钮,
8、弹出“创建“对话框。 步骤 3:在“创建“对话框中输入项目文件名“职工订单管理“,再按回车键或按“保存“按钮,这样就可以建立项目文件了,并出现“项目管理器“对话框。 步骤 4:在项目管理器中的“数据“选项卡中,选择“数据库“,单击“添加“按钮。 步骤 5:在“打开“对话框中,选定库文件“orders_manage.dbc“,然后单击“确定“命令按钮即可。 (4)步骤 1:在“项目管理器-职工订单管理“中,展开“数据库“,再展开“orders_manage“,再选中“本地视图“,单击“新建“按钮,出现“新建本地视图“对话框,再单击“新建视图“按钮,再出现“添加表或视图“对话框,双击表“emplo
9、yee“,接着单击“关闭“按钮。步骤 2:在“视图设计器-视图 1“中,单击“字段“选项卡,选择“Employee.职工号“、“Employee.姓名“,接着在“函数和表达式“处输入“YEAR(DATE()-YEAR(出生日期) AS 年龄“再单击“添加“按钮。 步骤 3:在“视图设计器-视图 1“中,单击“排序依据“选项卡,选择“YEAR(DATE()-YEAR(出生日期) AS 年龄“并选中“降序“单选钮。 步骤 4:保存该视图,输入视图名为“view_ca“,再单击“确定“按钮。)解析:二、简单应用题(总题数:1,分数:2.00)2.在考生文件夹下完成如下简单应用:(1)使用向导建立一对
10、多报表 report_c,选择父表 employee 中仓库号、职工号、姓名字段以及子表 orders 中除职工号以外的全部字段,报表按仓库号升序排序,报表样式选择简报式,报表标题是“职工订单汇总“。(2)使用 SQL 命令建立视图 view_cb,视图中显示每个职工签订的所有订单总金额(签订订单金额合计)大于 15000 元的职工号、姓名及其所签订订单的总金额,结果按总金额升序排序;同时把所用命令保存在文本文件 cmd_cb.txt 中。(分数:2.00)_正确答案:(正确答案:(1)【操作步骤】 步骤 1:单击常用工具栏中的“新建“按钮,文件类型选择“报表“,利用向导创建报表。 步骤 2:
11、在“向导选取“对话框中,选择“一对多报表向导“并单击“确定“按钮,并显示“一对多报表向导“对话框。 步骤 3:在“一对多报表向导“对话框的“步骤 1-从父表选择字段“中,首先要选取表“employee“,在“数据库和表“列表框中,选择表“employee“,接着在“可用字段“列表框中显示表 employee 的所有字段名,并选定“仓库号“、“职工号“和“姓名“至“选定字段“列表框中,单击“下一步“按钮。 步骤 4:“一对多报表向导“对话框的“步骤 2-从子表选择字段“中,首先要选取表“orders“,在“数据库和表“列表框中,选择表“orders“,接着在“可用字段“列表框中显示表 order
12、s 的所有字段名,并选定选定所有字段(除职工号以外)至“选定字段“列表框中,单击“下一步“按钮。 步骤 5:在“一对多报表向导“对话框的“步骤 3-为表建立关系“中,单击“下一步“按钮。 步骤 6:在“一对多报表向导“对话框的“步骤 4-排序记录“中,选择“仓库号“和选择“升序“单选按钮,再单击“添加“按钮,单击“下一步“按钮。 步骤 7:在“一对多报表向导“对话框的“步骤 5-选择报表样式“中,选择“简报式“,单击“下一步“按钮。 步骤 8:在“一对多报表向导“对话框的“步骤 6-完成“中,在“报表标题“文本框中输入“职工订单汇总“,单击“完成“。 (2)【操作步骤】 在命令窗口输入下列语句
13、。 OPEN DATABASE orders_manage CREATE view view_cb as SELECT employee.职工号,姓名,sum(金额) as 总金额 FROM employee,orders WHERE employee.职工号=orders.职工号 GROUP BY employee.职工号 HAVING sum(金额)=15000 ORDER BY 总金额 将语句复制到文件 cmd_cb.txt 中。)解析:三、综合应用题(总题数:1,分数:2.00)3.建立一个表单,表单文件名和表单控件名均为 myform_c,表单标题为“职工订单信息“,表单界面如图所示
14、,共有三个文本为职工号(Label1)、姓名(Label2)和性别(Label3)的标签,还有三个对应的文本框Text1、Text2 和 Text3,和一个表格控件 Grdorders。其它功能如下:(1)程序运行时,在文本框 Text1中输入一个职工号的值,并单击 DO(Command1)按钮,然后在 Text2 文本框中显示职工的姓名,在 Text3文本框中显示职工的性别,在表格控件(Grdorders)中显示该职工的订单(orders 表)的信息。(2)单击Close 命令按钮(Command2)关闭表单。注意:在表单设计器中将表格控件 Grdorders 的数据源类型设置为SQL 语句
15、。 (分数:2.00)_正确答案:(正确答案:【操作步骤】 步骤 1:单击常用工具栏中的“新建“按钮,文件类型选择“表单“,打开表单设计器。单击工具栏上“保存“按钮,在弹出“保存“对话框中输入“myform_c“即可。 步骤 2:在“表单设计器“中,在“属性“的 Caption 处输入“职工订单信息“,在 Name 处输入“myform_c“。 步骤 3:在“表单设计器“中,添加三个标签,在第 1 个标签 Label1“属性“的 Caption 处输入“职工号“,在第 2 个标签Label2“属性“的 Caption 处输入“姓名“,在第 3 个标签 Label3“属性“的 Caption 处
16、输入“性别“。 步骤4:在“表单设计器“中,添加三个文本框,Text1、Text2 和 Text3。 步骤 5:在“表单设计器“中,添加一个表格 Grid1,在其“属性“的 Name 处输入“Grdorders“,在 RecordSourceType 处选择“4SQL 说明“。 步骤 6:在“表单设计器“中,添加两个命令按钮,在第 1 个命令按钮“属性“的 Caption 处输入“DO“,在第 2个命令按钮“属性“的 Caption 处输入“Close“。 步骤 7:在“表单设计器“中,双击“Close“命令按钮,在“Command2.Click“编辑窗口中输入“Thisform. Relea
17、se“,接着关闭编辑窗口。 步骤 8:在“表单设计器“中,双击“DO“命令按钮,在“Command1.Click“编辑窗口中输入下列语句,接着关闭编辑窗口。 zgh=ALLTRIM(ThisForm.Text1.Value) If Used(“employee“) SELECT employee ELSE USE employee ENDIF LOCATE FOR 职工号=zgh ThisForm.Text2.Value=姓名 ThisForm.Text3.Value=性别 ThisForm.Grdorders.RecordSource=“SELECT * FROM orders WHERE 职工号=“+zgh+“ INTO CURSOR LSB“)解析:解析:利用表单设计器创建表单,依据题意设置各控件,分别输入表单及控件的属性和方法,编写程序语句完成表单功能。