就业数据资源平台
当前位置:首页 > Visual FoxPro
计算机等级考试:二级VFP机试第24套

 
第二十四套 
一、基本操作题(共四小题,第1和2题是7分、第3和4题是8分) 
   在考生文件夹下完成如下操作: 
   1. 打开项目文件salary_p,将考生文件夹下的数据库salarydb添加到该项目  
      中。 
   2. 在salary_db数据库中为dept表创建一个主索引(升序),索引名和索引表 
      达式均是 "部门号";为 salarys表创建一个普通索引(升序),索引名和 
      索引表达式均是"部门号", 再创建一个主索引 (升序)、索引名和索引表 
      达式均是"雇员号"。 
   3. 通过"部门号"字段建立salarys表和dept表间的永久联系。 
   4. 为以上建立的联系设置参照完整性约束:更新规则为"限制";删除规则为" 
      级联";插入规则为"限制"。 
本题主要考核点: 
    索引的建立、建立两表之间的永久联系、编辑参照完整性、将数据库加入到项目中等知识点 
解题思路: 
第一步:打开考生文件夹下的项目salary_p 
第二步:在项目salary_p的项目管理器中,先选择"数据"标签,再选择"数据库",点击"添加"按钮,在弹出的"打开"对话框中选择考生文件夹下的"salarydb.dbc",点击"确定"按钮,数据库便添加到项目之中 
第三步:在项目管理器中选中表"dept",点击"修改",弹出"表设计器",选择"索引"标签,在"索引名"列和"索引表达式"列中分别输入"部门号",在"类型"列中选择"主索引",排序的为升序,点击"确定"按钮,保存修改。用同样的方法为salarys表建立所要求的普通索引和主索引 
第四步:在项目管理器中选中数据库"salarydb",点击"修改"按钮,打开"数据库设计器"。在表dept的索引"部门号"上按下鼠标左键,并拖动鼠标,在salarys的索引"部门号"上松开鼠标,这样两个有之间便建立了永久联系。 
第五步:在数据库设计器中,单击dept表和salarys表之间的"连线",并选择主菜单"数据库"下的"编辑参照完整性",打开"参照完整性生成器"对话框,在三个选项卡上分别选择正确定的规则。点击"确定"退出 
第六步:保存数据库的修改。 
二、简单应用(2小题,每题20分,计40分) 
    在考生文件夹下完成如下简单应用: 
    1. 创建一个名称为sview的视图,该视图的SELECT语句查询salarydb数据库 
       中salarys表(雇员工资表)的部门号、雇员号、姓名、工资、补贴、奖励、 
       失业保险、医疗统筹和实发工资,其中实发工资由工资、补贴和奖励三项 
       相加,然后再减去失业保险和医疗统筹得出,结果按"部门号"降序排序, 
       最后将定义视图的命令代码存放到命令文件T1.PRG中并执行该程序。 
    2.设计一个名称为form1的表单,表单以表格方式(与BROWSE窗口方式相似, 
       表格名称为grdSalarys)显示salarydb数据库中salarys表的记录,供用 
       户浏览。在该表单的右下方有一个命令按钮,名称为 Command1,标题为" 
       退出浏览",当单击该按钮时退出表单。 
本题主要考核点: 
     视图的建立方法、程序的建立方法、查询语句的应用、表单的建立方法等知识点 
解题思路: 
第一小题:打开考生文件夹下项目"Salary_p.pjx",在命令窗口中输入下列命令来建立sview视图: 
CREATE VIEW SVIEW AS SELECT 部门号,雇员号,姓名,工资,补贴,奖励,失业保险,医疗统筹,; 
工资+补贴+奖励-失业保险-医疗统筹 AS 实发工资; 
FROM SALARYS ORDER BY 部门号 DESC 
下面来建立T1.prg程序,在项目Salary_p的项目管理器中,选择"代码"标签,再选择"程序",点击"新建 (N)"按钮,在打开的代码编辑窗口中输入sview视图的查询代码,即:CREATE VIEW SVIEW AS SELECT 部门号,雇员号,姓名,工资,补贴,奖励,失业保险,医疗统筹,; 
工资+补贴+奖励-失业保险-医疗统筹 AS 实发工资; 
FROM SALARYS ORDER BY 部门号 DESC 
选择工具栏的保存按钮,以文件名T1.prg保存在考生文件夹下. 
第二小题:在项目salary_p的项目管理器中,选择"文档"标签,再选择"表单,然后点击"新建"按钮,在弹出的" 新建表单"对话框中点击"新建表单",弹出"表单设计器"。在表单设计器中放置一个网格控件和一个命令按钮控件。将网格控件的name属性改为: GrdSalarys.点击工具栏中的"数据环境"按钮,在弹出的"添加表或视图"对话框中选择salary_db数据库下的salarys表.点击"添加"按钮,然后点击"关闭"按钮。在表单设计器中对GrdSalarys网格控件的RecordSourceType和RecordSource属性分别设为:表和salarys;设置命令按钮的Caption属性为:退出浏览,并为它的Click事件编写代码:THISFORM.RELEASE;以文件名form1.scx将所编辑的表单保存在考生文件夹下。 
三、综合应用(1小题,计30分) 
    在考生文件夹下,对数据库salary_db完成如下综合应用: 
    设计一个名称为form2的表单,在表单上设计一个"选项组"(又称选项按钮组, 
    名称为Optiongroup1) 及两个命令按钮"生成"(名称为Command1)和"退出"(名 
    称为Command2);其中选项按钮组有"雇员工资表" (名称为Option1)、"部门 
    表"(名称为Option2)和"部门工资汇总表"(名称为Option3)三个选项按钮。然 
    后为表单建立数据环境, 并向数据环境添加dept表(名称为Cursor1)和salarys 
    表(名称为Cursor2)。 
    各选项按钮功能如下: 
    (1) 当用户选择"雇员工资表"选项按钮后,再按"生成"命令按钮, 查询显示在 
        简单应用中创建的sview视图中的所有信息并把结果存入表gz1.dbf中。 
    (2) 当用户选择"部门表"选项按钮后,再按"生成"命令按钮,查询显示dept 
        表中每个部门的部门号和部门名称并把结果存入表bm1.dbf中。 

    (3) 当用户选择"部门工资汇总表"选项按钮后,再按"生成"命令按钮,则按 
        部门汇总, 将该公司的部门号、部门名、工资、补贴、奖励、失业保险 
        和医疗统筹的支出汇总合计结果存入表hz1.dbf 中。并按部门号的升序 
        排序。请注意:字段名必须与原字段名一致。 
    (4) 按"退出"按钮,退出表单。 
    注意:以上各项功能必须调试、运行通过。 
本题主要考核点: 
     表单的建立方法、数据环境、条件结构的用法、查询语句等知识点 
解题思路: 
第一步:打开考生文件夹下的项目salary_p 
第二步:在项目salary_p的项目管理器中选择"文档"标签,再选择"表单",点击"新建"按钮,在弹出的"新建表单"对话框中点击"新建表单"按钮打开表单设计器 
第三步:按要求在表单上建立各个控件,并设置其属性为题面所要求的属性值 
第四步:点击工具栏按钮中的"数据环境"按钮,将Salary_db中的表dept和salarys表依次添加到数据环境之中。 
第五步:为"生成"按钮控件添加如下的Click事件响应代码: 
DO CASE 
   CASE THISFORM.OPTIONGROUP1.VALUE=1 
       USE SVIEW 
       BROW 
       SELECT * FROM SVIEW INTO TABLE GZ1.DBF 
   CASE THISFORM.OPTIONGROUP1.VALUE=2 
       USE DEPT 
       BROW 
       SELECT * FROM DEPT INTO TABLE BM1.DBF 
   CASE THISFORM.OPTIONGROUP1.VALUE=3 
       SELECT DEPT.部门号,dept.部门名,; 
       SUM(工资) AS 工资,SUM(补贴) AS 补贴,SUM(奖励) AS 奖励 ,; 
       SUM(失业保险) AS 失业保险,SUM(医疗统筹) AS 医疗统筹; 
       FROM DEPT,SALARYS; 
       WHERE DEPT. 部门号=SALARYS. 部门号; 
       GROUP BY DEPT. 部门号; 
       ORDER BY DEPT. 部门号; 
       INTO TABLE HZ1.DBF      
ENDCASE 
      第六步:为标题为"退出"的命令按钮添加Click事件的响应代码: 
THISFORM.RELEASE 
第七步:以文件名form2.scx保存表单,保存在考生文件夹下。并运行表单。
就业数据资源平台