1、国家二级 VF 机试(操作题)-试卷 133 及答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.在考试文件夹下完成下列操作:(1)在考生文件夹下“人事管理“数据库中,为“职工“表中的“性别“字段设置有效性规则,只能取“男“或“女“;默认值是“男“。(2)建立快捷菜单 cd,选项有打开、关闭和退出。生成同名的菜单程序文件。(3)为“职工“表加入一个普通索引,索引名和索引表达式均为“部门编号“,升序。(4)为“职工“表和“部门“表建立联系,定义参照完整性规则:删除规则为“级联“,更新规则和插入规则为“限制“。(分数:2.00)_二、简单应用题(总题数
2、:1,分数:2.00)2.在考生文件夹下完成下列操作:(1)编写程序文件 prgone.prg,其功能是从“人事管理“数据库的相关表中查询销售部从 1985 年到 1989 年这 5 年出生的所有职工的信息,并存到表 cyqk.dbf 中。查询结果包含编号、姓名、出生日期和部门名称(部门表中的名称)4 个字段;按职工的出生日期和编号升序排列。最后运行该程序。(2)扩展基类 ListBox,创建一个名为 MyListBox 的新类。新类保存在名为 Myclasslib 的类库中,该类库文件存放在考生文件夹下。设置新类的 Height 属性的默认值为 120,Width 属性的默认值为 80。(分
3、数:2.00)_三、综合应用题(总题数:1,分数:2.00)3.为了对“认识管理“数据库中的数据进行查询,请设计一个用于查询部门职工的表单。该表单的名称为formone,文件名为 pform.scx,标题为“人员查询“,其界面如下图所示: (分数:2.00)_国家二级 VF 机试(操作题)-试卷 133 答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.在考试文件夹下完成下列操作:(1)在考生文件夹下“人事管理“数据库中,为“职工“表中的“性别“字段设置有效性规则,只能取“男“或“女“;默认值是“男“。(2)建立快捷菜单 cd,选项有打开、关闭和退
4、出。生成同名的菜单程序文件。(3)为“职工“表加入一个普通索引,索引名和索引表达式均为“部门编号“,升序。(4)为“职工“表和“部门“表建立联系,定义参照完整性规则:删除规则为“级联“,更新规则和插入规则为“限制“。(分数:2.00)_正确答案:(正确答案:【操作步骤】 (1)单击菜单栏“文件“-“打开“命令,打开考生文件夹下名为“人事管理“的数据库。右键单击“职工“表,选择“修改“命令,在打开的表设计器中,将鼠标放在“性别“一行,在“字段有效性“下的“规则“一栏输入“性别=“男“.OR.性别=“女“,在“默认值“处输入“男“。 (2)通过“新建对话框“新建一个菜单,并在弹出的对话框中选择“快
5、捷菜单“。分别输入三个菜单名称“打开“、“关闭“和“退出“,保存菜单并命名为“cd“。然后单击菜单栏“菜单“-“生成“命令,生成可执行文件。 (3)在“数据库设计器-人事管理“中,右键单击“职工“表,选择“修改“命令,在打开的表设计器中,单击“索引“选项卡,输入索引名“部门编号“,类型设为“普通索引“,表达式为“部门编号“,单击“确定“按钮保存对表的修改。 (4)在“数据库设计器-人事管理“中,将“部门“表的主索引“部门编号“用鼠标拖拽到“职工“表的普通索引“部门编号“处,松开鼠标即可建立两表间联系。选择菜单栏“数据库“-“清理数据库“命令,然后右键单击两表间的联系线,选择“编辑参照完整性“,
6、在“编辑参照完整性生成器“对话框中,依次选中“更新规则“选项卡下的“限制“单选按钮、“删除规则“选项卡下的“级联“单选按钮、“插入规则“选项卡下的“限制“单选按钮,最后单击“确定“按钮。)解析:二、简单应用题(总题数:1,分数:2.00)2.在考生文件夹下完成下列操作:(1)编写程序文件 prgone.prg,其功能是从“人事管理“数据库的相关表中查询销售部从 1985 年到 1989 年这 5 年出生的所有职工的信息,并存到表 cyqk.dbf 中。查询结果包含编号、姓名、出生日期和部门名称(部门表中的名称)4 个字段;按职工的出生日期和编号升序排列。最后运行该程序。(2)扩展基类 List
7、Box,创建一个名为 MyListBox 的新类。新类保存在名为 Myclasslib 的类库中,该类库文件存放在考生文件夹下。设置新类的 Height 属性的默认值为 120,Width 属性的默认值为 80。(分数:2.00)_正确答案:(正确答案:【操作步骤】 (1)单击常用工具栏的“新建“按钮,新建一个程序文件,编写命令语句如下: SELECT 职工.编号,职工.姓名 as 姓名, 职工.出生日期, 部门.名称 as 部门名称; FROM 人事管理!部门 INNER JOIN 人事管理!职工; ON 部门.部门编号 = 职工.部门编号; WHERE year(职工.出生日期) = 19
8、85; AND year(职工.出生日期) = 1989; AND 部门.名称 = “销售部“; GROUP BY 职工.编号; ORDER BY 职工.出生日期, 职工.编号; INTO TABLE cyqk.dbf 保存程序文件为“prgong.prg“并运行。 (2)步骤 1:通过“新建“对话框新建一个“类“文件。 步骤 2:在弹出的“新建类“对话框中,输入“类名“MyListBox,在“派生于“下拉列表中选择 ListBox,单击“存储于“文本框后的按钮,在打开的“另存为“对话框选择考生文件夹,输入文件名 myclasslib,单击“确定“按钮。 步骤 3:打开“类设计器“窗口,进入类
9、设计器环境。将其 Height 属性设为“120“,Width 属性设为“80“。)解析:三、综合应用题(总题数:1,分数:2.00)3.为了对“认识管理“数据库中的数据进行查询,请设计一个用于查询部门职工的表单。该表单的名称为formone,文件名为 pform.scx,标题为“人员查询“,其界面如下图所示: (分数:2.00)_正确答案:(正确答案:【操作步骤】 步骤 1:通过“新建“对话框新建一个表单。在打开的表单设计器中,修改表单的 Caption 属性为“人员查询“,Name 属性为“formone“。 步骤 2:根据题目要求向表单添加一个标签 label1,并将其 Caption
10、属性修改为“输入部门“,name 属性修改为“Labelone“。添加一个文本框控件,修改其 name 属性为“Textone“。添加两个命令按钮,分别将两个命令按钮的 Caption 属性修改为“查询“和“退出“。Name 属性分别修改为“Commanda“和“Commandb“。 步骤 3:在表单设计器中,右键单击表单空白处,选择“数据环境“命令,将“部门“表和“职工“表添加到数据环境中。向表单添加一个表格 Grid1,将其 Name 属性修改为“Gridone“,RecordSource 属性设为“SELECT 姓名,性别,出生日期,编号 from 职工“,RecordSourceTyp
11、e 属性设为“4-SQL 说明“。 步骤 4:双击“查询“命令按钮,编写其 Click 事件代码如下: x=allt(thisform.textone.value) thisform.Gridone.recordsourcetype=4 thisform.Gridone.recordsource=“SELECT 职工.姓名,职工.性别,职工.出生日期,职工.编号; FROM 人事管理!部门 INNER JOIN 人事管理!职工; ON 职工.部门编号=部门.部门编号; WHERE 部门.名称=x; ORDER BY 职工.编号; INTO table tableone.dbf“ 步骤 5:双击“退出“命令按钮,编写其 Click 事件代码“ThisForm.Release“。 步骤 6:保存表单为“pform“并运行,在文本框中输入部门名称“开发部“,单击“查询“按钮。)解析: