1、国家二级 VF机试模拟试卷 26及答案与解析 一、基本操作题( 30分) 1 (1)建立项目文件,名为 myp。 (2)将数据库 “学生 ”添加到新建立的项目当中。 (3)建立自由表 myt (不要求输入数据 ),表结构为: 考号 字符型 (7) 姓名 字符型 (8) 成绩 整型 (4)修改表单 my,将其标题改为 “信息查询 ”。 二、简单应用题( 40分) 2 (1)在考生文件夹中有一个数据库 mydb,其中有数据库表 stu、 kech 和 chj。利用SQL语 句查询选修了 “日语 ”课程的学生的全部信息,并将结果按 “学号 ”升序排序放在 new. dbf 中 (库的结构同 stu,
2、并在其后加入课程号和课程名字段 )。 (2)在考生文件夹中有一个数据库 mydb,使用 “一对多报表向导 ”制作一个名为 myre 的报表,存放在考生文件夹中。 要求:选择父表 stu 表中的 “学号 ”和 “姓名 ”字段,从子表 kech 中选择 “课程号 ”和“成绩 ”字段,排序字段选择 “学号 ”(升序 ),报表样式为 “简报式 ”,方向为 “纵向 ”,报表标题为 “学生成绩信息 ”。 三、综合应用题( 30分 ) 3 设计名为 mysupply的表单 (表单的控件名和文件名均为 mysupply)。表单的标题为 “零件供应情况 ”。表单中有一个表格控件和两个命令按钮 “查询 ”(名称为
3、Command1)和 “退出 ” (名称为 Command2)。 运行表单时,单击 “查询 ”命令按钮后,表格控件 (名称 grid1)中显示了工程号 “J4”所使用的零件的零件名、颜色和重量。 单击 “退出 ”按钮关闭表单。 国家二级 VF机试模拟试卷 26答案与解析 一、基本操作题( 30分) 1 【正确答案】 (1)启动 Visual FoxPro后,在命令窗口输入命令: CREATE PROJECT myp,新建一个项目管理器。 (2)在项目管理器 myp 中,首先在 “数据 ”选项卡中选择 “数据库 ”,然后单击选项卡右边的 “添加 ”命令按钮,在系统弹出的 “打开 ”对话框中,将考
4、生文件夹中的数据库“学生 ”添加到项目管理器中,单击 “确定 ”按钮。 (3)在项目管理器 my 中,首先在 “数据 ”选项卡中选择 “自由表 ”,然后单击选项卡右边的 “新建 ”命令按钮,在系统弹出的 “新建表 ”对话框中,单击 “新建表 ”图标,将其命名为 myt 保存在考生文件夹中。在弹出 的 myt 表设计器的 “字段 ”选项卡中,根据题意依次输入每个字段的字段名、类型和宽度。单击表设计器右边的 “确定 ”按钮。 (4)从菜单栏里单击 “文件 ”并选择 “打开 ”,或直接单击工具栏上的 “打开 ”图标,在弹出的对话框中选择要打开的表单文件 my.scx。单击表单空白处,在属性面板中,将
5、其 Caption 属性值改为 “信息查询 ”。单击工具栏上的 “保存 ”图标,保存更改。 【试题解析】 本大题主要考查的是通过项目管理器来完成一些数据库及数据库表的操作,项目的建立可以直接在命令窗口输入命令来实现,数据库添加可以通 过项目管理器中的命令按钮,打开相应的设计器直接管理,添加数据表可以通过数据库设计器来完成,此外,还考查了表单的属性的更改。 二、简单应用题( 40分) 2 【正确答案】 (1)在命令窗口中输入命令: MODIFY COMMAND query1,在程序文件编辑器窗口输入如下程序段: *文件 query1.prg中的程序段 * SELECT stu.学号,姓名,年龄,
6、性别,院系号; kech.课程号, chj.课程名; FROM stu, chj, kech; WHERE stu.学号 =kech.学号; AND kech.课程号 =chj.课程号; AND chj.课程名 =“日语 “; ORDER BY stu.学号; INTO TABLE new * 在命令窗口输入命令: DO query1,运行程序,通过 BROWSE 命令可查看结果,如图 3-86所示。 图 3-86 (2)在 “工具 ”菜单选择 “向导 ”“报表 ”菜单命令,出现 “向导选取 ”对话框,根据题意数 据源是多个表,因此选定 “一对多报表向导 ”。单击 “确定 ”。 步骤一:在弹出
7、的对话框中 “数据库和表 ”选项选择父表 stu,并把 “可用字段 ”的 “学号 ”和 “姓名 ”选为“选定字段 ”。 步骤二:选择子表 kech,并把 “可用字段 ”的 “课程号 ”和 “成绩 ”选为“选定字段 ”。 步骤三:系统自动以 “学号 ”建立两表之间的关系。 步骤四:在 “排序记录 ”中选择 “学号 ”,并选择 “升序 ”排序。 步骤五:报表样式选择为 “简报式 ”,方向为 “纵向 ”。 步骤六:把表单标题改为 “学生成绩信息 ”,可以在单击 “完成 ”之前单击 “预览 ”按钮来预览生成的报 表,最后单击 “完成 ”按钮。 将报表以文件名 myre 保存在考生文件夹里。 【试题解析
8、】 本大题 1小题考查了 SQL联接查询,设计过程中主要注意两个表之间进行关联的字段; 2小题考查的是根据表单向导生成联系多表的报表内容,利用向导时应注意父表和子表的选择。 三、综合应用题( 30分) 3 【正确答案】 在命令窗口输入命令: CREATE FORM mysupply,打开表单设计器,通过 “常用工具栏 ”向表单添加一个表格和两个命令按钮。 选中表单 (Form1),在属性面板中修改 Name 的属性值为 mysupply,将 Caption 的属性值改为 “零件供应情况 ”,然后在属性面板顶端的下拉框中选择 Command1,修改该命令按钮控件的 Caption 属性值为 “查
9、询 ”,以同样的方法将第二个命令按钮设置 Caption 属性值改为 “退出 ”,如图 3-84所示。 图 3-84 双击命令按钮Command1(查询 ),编写该控件的 Click 事件,程序代码如下: *命令按钮Command1(查询 )的 Click 事件代码 * SELECT 零件 .零件名,零件 .颜色,零件 .重量; FROM 供应零件 !零件 INNER JOIN 供应零件 !供应; ON 零件 .零件号 =供应 .零件号; WHERE供应 .工程号 =”J4”; IMTO CURSOR temp Thiaform.Grid1.RecordSourceType=1 Thisfor
10、m.Grid1.RecordSource=“temp“ * 以同样的方法为 “退出 ”命令按钮编写 Click事件代码: *命令按钮 Command2(退出 )的 Click 事件代码* Thisform. Release * 保存表单完成设计。表单运行结果如图 3-85所示。 图 3-85 【试题解析】 本大题考查的是表单设计,在设计控件属性中,不要将控件的标题(Caption)和名称 (Name)属性弄混淆了,名称属性是该控件的一个内部名称,而标题属性是用来显示的一个标签名称。程序部分属于 SQL的简单联接查询,在显示查询结果时,首先可用一个临时表保存查询结果,然后将表格控件中来显示数据的属 性值设置为该临时表,用来显示查询结果。