计算机等级考试:二级VFP机试第19套
来源:优易学  2011-12-9 20:47:47   【优易学:中国教育考试门户网】   资料下载   IT书店

第十九套

一、基本操作题(共四小题,第1和2题是7分、第3和4题是8分)

    在考生文件夹下完成如下操作:

    1. 打开"订货管理"数据库,并将表order_list添加到该数据库中。

    2. 在"订货管理"数据库中建立表customer,表结构描述如下:

       客户号      字符型(6)

       客户名      字符型(16)

       地址        字符型(20)

       电话        字符型(14)

    3. 为新建立的customer表创建一个主索引,索引名和索引表达式均是"客户

       号"。

4. 将表order_detail从数据库中移出,并永久删除。

本题主要考核点:

将一个自由表添加到数据库中、表结构的建立、表索引的建立、将表移出数据库并删除该表等知识点

本题解题思路:

第一步:打开考生文件夹下的"订货管理"数据库

第二步:打开数据库菜单选择"添加表(A)"在弹出的"打开"对话框中,选定考生文件夹下的order_list表,再点击"确定"即可

第三步:再次打开数据库菜单选择"新建表(N)",在弹出的对话框中选择"新建表",并在弹出"创建"对话框中选定考生文件夹,在输入表名中填入"customer",再点击保存。

第四步:在弹出的表设计器中按题面的要求依次输入各个字段的定义,选择"索引"标签,在索引名列中填入"客户号",在索引类型列中选择"主索引",在索引表达式列中填入" 客户号",点击"确定"按钮,保存表结构。

第五步:在数据库设计器窗口中单击选中order_detail,打开主窗口的数据库菜单选择"移去(R)",并在弹出的菜单中选择"删除(d)"即可,这样就将表order_detail从数据库中移出,并永久删除。

二、简单应用(2小题,每题20分,计40分)

    在考生文件夹下完成如下简单应用:

    1. 将customer1表中的全部记录追加到customer表中,然后用SQL SELECT语句

       完成查询:列出目前有订购单的客户信息(即有对应的order_list记录的

       customer表中的记录),同时要求按客户号升序排序,并将结果存储到

       results表中(表结构与customer表结构相同)。

    2. 打开并按如下要求修改form1表单文件(最后保存所做的修改):

     (1) 在"确定"命令按钮的click事件(过程)下的程序有两处错误,请改正之;

(2) 设置Text2控件的有关属性,使用户在输入口令时显示"*"(星号)

本题主要考核点:

     SQL中的查询SELECT查询,子查询,查询的排序,查询的结果的去向;控件的属性、表单的操作等知识点。

解题思路:

    第一小题:将customer1中的全部记录追加到customer中,要将一个表的所有记录追加到另一个表中使用APPEND FROM 命令,首先打开customer:USE CUSTOMER,在APPEND FROM的后面是要追加到CUSTOMER的表名,这里是CUSTOMER1。要得到目前有订购单的客户信息,需要用到子查询,首先得到在 ORDER_LIST中有订单的客户号,可以用SELECT 客户号 FROM ORDER_LIST GROUP BY 客户号得到,这里用到了GROUP BY 子句从而保证了得到的子查询中客户号的唯一性。再以此子查询做为查询的条件便可以从CUSTOMER中得到所有有订单的客户的信息,条件放在WHERE子句的后面 WHERE 客户号 IN (SELECT 客户号 FROM ORDER_LIST GROUP BY 客户号);对结果集进行排序需要ORDER BY 子句,ORDER BY 客户号;将结果集放入一个永久表中需要用到INTO TABLE子句,INTO TABLE RESULTS。这样完整的SQL语句便出来了:

SELECT * FROM CUSTOMER;

WHERE 客户号 IN;

(SELECT 客户号 FROM ORDER_LIST GROUP BY 客户号);

ORDER BY 客户号;

INTO TABLE RESULTS

      第二小题:打开考生文件夹下的"form1.scx",在表单设计器中双击"确定"控件打开代码编辑器,第一处错误:thisform.text1= thisform.text2判断条件的错误,这里需要的是两个编辑文本框中的文本进行的比较,而要得到text1中文本和text2控件中的文本需要用到text的属性,所以此处应改为:thisform.text1.text=thisform.text2.text;另一处错误是对于关闭表单需要用表单的release方法,而不是close方法,况且表单对象也没有close方法,所以此处应改为:thisform.release。可以通到对 text控件对象的PasswordChar属性赋值为:"*",来使用户在输入口令时显示"*"。

三、综合应用(1小题,计30分)

    使用报表设计器建立一个报表,具体要求如下:

    (1) 报表的内容(细节带区)是order_list表的订单号、订购日期和总金额;

    (2) 增加数据分组,分组表达式是 "order_list.客户号",组标头带区的内容

        是"客户号",组注脚带区的内容是该组订单的"总金额"合计

    (3) 增加标题带区,标题是 "订单分组汇总表(按客户)",要求是3号字、黑

        体, 括号是全角符号。

    (4) 增加总结带区,该带区的内容是所有订单的总金额合计。最后将建立的报

        表文件保存为report1.frx文件。

提示:在考试的过程中可以使用"显示→预览"菜单查看报表的效果。

本题主要考核点:

利用报表设计器设计报表的方法

解题思路:

第一步:在Visual FoxPro的主窗中按下组合键Ctrl+N,系统弹出"新建"对话框,在"文件类型"中选择"报表",再点击"新建文件"按钮,则系统弹出"报表设计器"窗口

第二步:从"报表设计器"的工具栏上单击"数据环境"按钮,系统打开"数据环境设计器",这时主菜单栏出现"数据环境"菜单,从中选择"添加",系统弹出"添加表或视图"对话框,选择考生文件夹下的order_list表,并点击"关闭"按钮

第三步:在报表设计器和数据环境设计器都可见的情况下,在数据环境设计器中表order_list的订单号字段上按下鼠标左键,并拖动到报表设计器的细节带区在合适的位置松开鼠标。用同样的方法,将订购日期、总金额都放置在细节带区的合适位置

第四步:单击主菜单的"报表",并选择"数据分组(G)",系统弹出数据分组对话框,单击对话框中的省略号按钮,弹出" 表达式生成器",从中选择分组表达式:order_list.客户号。这样"报表设计器"中增加"组标头"和"组注脚"带区。适当调整两个新增加的带区的高度。利用第三步的方法,在"组标头"带区添加显示order_list客户号字段的域控件。单击"报表控件"工具栏的"域控件"按钮,然后在"组注脚 1:客户号"带区的适当位置上单击鼠标,系统显示一个"报表表达式"对话框,在"表达式"文本框中通过单击右侧对话按钮,打开表达式生成器对话框,从中选择order_list.总金额字段,单击"确定",单击"报表表达式"对话框的"计算(C)",弹出"计算字段"对话框,选中"总和"计算类型,单击" 确定",在"报表表达式"对话框中单击"确定",这样组注脚带区完成

第五步:用和第四步类似的方法可以建立标题带区和总结带区

第六步:以文件名report1.frx将报表文件保存在考生文件夹下。

责任编辑:小草

文章搜索:
 相关文章
热点资讯
资讯快报
热门课程培训