1、国家二级 VF机试模拟试卷 58及答案与解析 一、基本操作题( 30分) 1 1. 请在考生文件夹下建立一个数据库 ks4。 2将考生文件夹下的自由表 stud、 cour、 scor加入到数据库 ks4中。 3为 stud表建立主索引,索引名和索引表达式均为学号;为 cour表建立主索引,索引名和索引表达式均为课程编号:为 scor表建立两个普通索引,其中一个索引名和索引表达式均为学号,另一个索引名和索引表达式均为课程编号。 4在以上建立的各个索引的基础上为 3个表建立联系。 二、简单应用题( 40分) 2 1. 在考生文件夹下有一个数据库 gcs,其中 gongch表结构如下: gongc
2、h(编号 C(4),姓名 C(10),性别 C(2),工资 N(7, 2),年龄 N(2),职称C(10) 现在要对 gongch表进行修改,指定编号为主索引,索引名和索引表达式均为编号;指定职称为普通索引,索引名和索引表达式均为职称;年龄字段的有效性规则在 25 65之间 (含 25和 65),默认值是 45。 2在考生文件夹中有数据库 gcs,其中有数据库表 gongch。在考生文件夹下设计一个表单,该表单为 gcs库中 gongch表窗口式输入界面,表单上还有一个名为cmdclose的按钮,标题名为 “关闭 ”,点击该按钮,使用 ThisForm.Release退出表单。最后将表单存放在
3、考生文件夹中,表单文件名足 form window。 提示:在设计表单时,打开 gcs数据库设计器,将 gongch表拖入到表单中就实现了 gongch表的窗口式输入界面,不需要其他设置或修改。 三、综合应用题( 30分) 3 在考生文件夹下有仓库数据库 CHAXUN3包括 3个表文件: zg(仓库号 C(4),职工号 C(4),工资 N(4) dgd(职工号 C(4),供应商号 C(4),订购单号 C(4),订购日期 D,总金额 N(10) gys(供应商号 C(4),供应商名 C(16),地址 C(10) 设计一个名为 cx3的菜单,菜单中有两个菜单项 “查询 ”和 “退出 ”。 程序运行
4、时,单击 “查询 ”应完成下列操作:检索出工资多于 1230元的职工向北京的供应商发出的订购单信息,并将结果按总金额降序排列存放在 order文件中。 单击 “退出 ”菜单项,程序终止运行。 (注:相关数据库表文件存在于考生文件夹下 ) 国家二级 VF机试模拟试卷 58答案与解析 一、基本操作题( 30分) 1 【正确答案】 1在命令窗口输入命令: MODIFY DATABASE ks4,新建一个数据库。 2右键单击数据库设计器,选择 “添加表 ”快捷菜单命令,系统弹出 “打开 ”对话框,将考生文件夹下的 stud、 cour和 scor三个自由表分别添加到数据库 ks4中。 3在数据库设计器
5、中,右键单击数据库表 stud.dbf,选择 “修改 ”快捷菜单命令,进入 stud.dbf的数据表设计器界面,在 “字段 ”选项卡中为 “学号 ”字段选择一个索引排序,然后单击 “索引 ”选项卡 ,此处字段索引名默认的为 “学号 ”,在 “索引 ”下拉框中选择索引类型为 “主索引 ”。根据题意,以同样的方法为数据库表 cour和 scor建立相应的索引。 4在数据库设计器中,将 stud表中 “索引 ”下面的 “学号 ”主索引字段拖到 scor表中 “索引 ”下面的 “学号 ”索引字段上,建立 stud和 scor两表之间的联系,以同样的方法建立 cour和 scor两表间的联系,关联字段为
6、 “课程编号 ”,这样就建立了 3个表之间的联系。 【试题解析】 本大题主要考查的是数据库和数据库表之间的联系,以及字段索引的建立。新建数据库可以 通过菜单命令、工具栏按钮或直接输入命令来建立,添加或修改数据库表以及建立表之间的联系,可以通过数据库设计器来完成,建立表索引可以在数据表设计器中完成。 二、简单应用题( 40分) 2 【正确答案】 1在命令窗口输入两条命令: USE gongch &打开数据表 gongch MODIFY STRUCTURE &修改数据表结构 打开表设计器后,在 “字段 ”选项卡中为“编号 ”字段选择一个索引排序,然后单击 “索引 ”选项卡,在此选项卡中,字段索引名
7、默认为 “编号 ”,在 “索引 ”下拉框中选择索引类型为 “主索引 ”,建立表的主索引;以同样的方法为 “职称 ”字段建立普通索引。 在 gongch表设计器的 “字段 ”选项卡中,选中 “年龄 ”字段,根据题意,在 “字段有效性 ”的 “规则 ”文本框中输入 “年龄=25”,限定 字段的取值范围。在 “默认值 ”文本框中输入 “45”,建立该字段的默认值,如图所示。 2利用菜单命令 “文件 ”“ 新建 ”,或单击常用工具栏的 “新建 ”图标按钮,打开 “新建 ”对话框,选择 “表单 ”单选项,然后单击“新建文件 ”图标按钮,打开表单设计器。 在表单设计器中,鼠标右键单击空白表单,选择 “数据
8、环境 ”快捷菜单命令,打开表单的数据环境,将数据库表文件gongch添加到数据环境中,将数据环境中的 gongch表拖放到表单中,可看到在表单中出现一个表格控件,此时实现了 gongch表的窗口式输入界面,如图所示。最后在 “表单控件工具栏 ”中,选中命令按钮控件添加到表单中,在属性对话框中修改该命令按钮的 Caption属性值为 “关闭 ”,修改 Name属性值为 cmdclose,双击命令按钮,在 Click事件中输入程序行 ThisForm.Release,用来关闭表单。 单击常用工具栏中的 “运行 ”图标按钮,系统首先要求保存该表单文件,在弹出的 “另存为 ”对话框中输入表单文件名 f
9、orm window,保存在考生文件夹下,运行表单。 【试题解析】 本大题第 1小题考查的是数据库中数据的完整性,包括实体完整性以及域完整性和约束规则三个方面 ,这些都是在表设计器中完成的,且只有数据库表才可以进行数据完整性的设置;第 2小题中考查的是在表单中设定数据环境,通过表单的数据环境快速建立表单控件和数据之间的联系。 三、综合应用题( 30分) 3 【正确答案】 在命令窗口输入命令: CREATE MENU cx3,系统弹出一个 “新建菜单 ”对话框,在对话框中单击 “菜单 ”图形按钮,进入菜单设计器环境。根据题日要求,首先输入两个主菜单名称 “查询 ”和 “退出 ”,接着在 “查询
10、”菜单行的 “结果 ”下拉框中选择 “过程 ”选项 (用于编写程序 ),在 “退出 ”菜单行的 “结果 ”下拉 框中选择 “命令 ”选项。 单击 “查询 ”菜单行中的 “创建 ”按钮,进入程序设计的编辑窗口,输入如下程序段: *“查询 ”菜单命令的程序设计 * SET TALK OFF SET SAFETY OFF SELECT*FROM dgd; WHERE; 职工号 IN(SELECT 职工号 FROM zg WHERE 工资 1230); AND供应商号 IN(SELECT 供应商号 FROM gys WHERE 地址 =“北京 “); ORDER BY总金额 DESC; INTO TA
11、BLE order SET SAFETY ON SET TALK ON * 在 “退出 ”菜单项的 “命令 ”文本框中编写程序代码: SET SYSMENU TO DEFAULT 选择菜单命令 “菜单 ”“ 生成 ”,生成一个菜单文件 cx3.mpr。关闭设计窗口,在命令窗口输入命令: DOcx3.mpr,看到 Visual FoxPro的菜单栏被新建的菜单所代替, 单击 “退出 ”菜单命令将恢复系统菜单。 执行 “查询 ”菜单命令后,系统自动生成新数据表文件 order.dbf用来保存查询结果。 【试题解析】 本大题考查的主要是利用 SQL的嵌套查询来完成多个数据库表之间的记录查找,此处应注意运算符 IN的使用,以及排序短语 ORDER BY的使用:在菜单的设计过程中主要是注意两个菜单命令在 “结果 ”下拉框中应选择的类型。