计算机等级考试:二级VFP机试第17套

计算机等级考试:二级VFP机试第17套,第1张

计算机等级考试:二级VFP机试第17套,第2张

第17集

一、基本操作题(共四个子题,1、2题7分,3、4题8分)


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


1。创建一个新项目“客户管理”。


2。在新建立的项目“客户管理”中创建数据库“订单管理”。


3。在“订单管理”数据库中建立order_list表。表格结构如下:


客户号的字符类型(6)


订单号字符类型(6)


订单日期类型


总额浮动型(15.2)


4。为order_list表创建主索引。索引名称和索引表达式是“顺序号”。


本问题主要评估点:


创建项目、数据库、数据库中的表和索引。


解决问题的思路:


第一步:在Visual FoxPro主窗口中按Ctrl+N,弹出“新建”对话框。在文件类型中选择"项目",然后点击"新建文件"按钮;


第二步:在弹出的“创建”对话框中,选择考生文件夹,在项目文件中填写“customer management.pjx”,然后点击保存按钮;因此,创建了一个新项目;


第三步:在弹出的项目管理器中选择“数据”选项卡,然后选择“数据库”,最后点击“新建”按钮;


第四步:在弹出的“新建数据库”对话框中点击“新建文件”;


第五步:在弹出的“创建”对话框中,选择考生文件夹,在“数据库名称”中填写“order management.dbc”,然后点击保存按钮;这就完成了数据库的添加;


第六步:选择新建项目客户管理的项目管理器中的“数据”页签,然后选择“表格”,最后点击“新建”按钮;


第七步:在弹出的“新建表格”对话框中点击“新建表格”,在弹出的“创建”对话框中选择考生文件夹,在“输入表格名称”中填写“order_list.dbf”,然后点击保存。


第八步:在弹出的“表格设计器”中,按照题干要求建立表格结构后,选择“索引”页签,在索引列中填写“序号”,在索引类型列中选择“一级索引”,在索引表达式列中填写“序号”,点击“确定”保存表格结构。

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


在考生文件夹下完成下面的简单申请:


1。将order_list1表中的所有记录追加到order_list表中,然后选择with SQL。


完成查询的语句:按总金额降序排列所有客户的客户号、客户名称、订单号。


Total amount,并将结果存储在结果表中(其中客户号和客户名取自customer)


表,订单号和总金额取自order_list表)


2。打开form1表单,按照以下要求进行修改(注意:最后保存修改):


(1)表单中随机排列了五个命令按钮。不要移动或改变“基准按钮”的位置(否则


影响等级),然后将其他命令按钮与“基准按钮”的左侧部分对齐;


(2)在这组命令按钮的右边添加一个表格控件,并使其RecordSourceType属于


属性设置为“table”,然后设置另一个相关属性以在table控件中显示customer表。

的记录。


本问题主要评估点:


SQL中的查询:选择查询、连接查询、查询排序、查询结果的目的地;以及INSERT语句、表单的建立、控件的布局、向表单添加数据环境、控件和数据源的绑定等知识。


解决问题的思路:


第一个问题:将order_list1中的所有记录追加到order_list中。要将一个表中的所有记录追加到另一个表中,请使用APPEND FROM命令。首先打开order_list:使用order _ list,后面跟表名追加到order _ list,这里是order_list1。查询表中的数据需要SELECT命令。要查询的数据来自customer和order_list表。将它们放在from之后,用逗号分隔,并指定一个别名Cu和ORD分别为他们。因为它是要在连接查询中指示的查询条件,所以连接条件CU。客户编号= ord。客户编号放在WHERE短语之后,结果集按总金额降序排序,因此:总金额desc应放在ORDER BY短语之后,结果集应存储在结果表中,因此:结果应放在INTO表之后。由于查询结果并不都是属性,所以需要指明结果的属性,客户号在两个表中都存在,所以需要指明这个属性来自哪个源表(这里用表的别名代替)。这形成了一个完整的查询语句:


选择CU。客户编号,CU。客户名称、订单订单号、订单总金额;


来自客户CU,ORDER _ LIST ORDER;


其中CU。客户号=订单客户号;


按总金额排序desc;


到表结果中


问题2:打开考生文件夹下的FROM1表单,拖动鼠标选中5个随机放置的按钮和“基准按钮”控件,点击“布局”工具栏中的“左对齐”即可完成所有按钮的左对齐。在窗体上放置一个table控件,将窗体的“数据环境”设置为customer表,并将table控件的RecordSourceType属性设置为“table”,将RecordSource属性设置为“customer”,这样table控件就可以显示customer表的内容。

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


修改order_detail表中的单价时,应根据该表的“单价”和“数量”字段进行修改。


order _ list表的总金额字段。现在写一个程序来实现这个功能。具体要求和注意事项。


如下:


(1)根据order_detail表中的记录,重新计算order_list表中总金额字段的值;


(2)一条order_list记录可以对应多条order_detail记录;


(3)在编程之前,请确保在基本操作中正确建立了order_list表,它是


记录被追加到该表中(注意只能追加一次);


(4)最后,order_list表中的记录按总金额降序排序,并存储在od_new表中(表结构


与order_list表完全相同);


(5)将程序保存为prog1.prg文件。


本问题主要评估点:


程序的建立方法、程序中循环结构的使用、SQL查询语句的使用、记录的修改方法等知识点。


解决这个问题的思路:


第一步:打开项目客户管理,首先在项目管理器中选择“代码”选项卡,然后选择“程序”,最后点击“新建”按钮。


第二步:在弹出窗口中输入以下代码:


SET TALK OFF &&在程序运行模式下关闭命令结果的显示。


设置安全并在文件名重复时关闭提示。


全部关闭


选择订单号,SUM(数量*单价)作为总金额;


FROM ORDER _ DETAIL;


按订单号分组;


转换为光标表格


&&这里,首先获取每笔订单的总金额。因为每个订单有多个记录,


&&所以我们需要使用SUM函数来获得每个订单的总金额,SUM(数量*单价)作为总金额。


&&放在SELECT后面,用逗号与订单号隔开;要使用订单号作为分组的基础,请将订单号放入


&&在排序依据之后;将结果集放入临时表CurTable中,并使用INTO CURSOR CurTable


开放式数据库订单管理


&&打开数据库文件


选择2


&&选择工作区


使用订单列表


&&在新的工作区中打开表格ORDER_LIST。


DO WHILE NOT EOF() &&遍历ORDER_LIST中的每条记录。


选择可简化表格。CurTable中的总金额;


在可简化的地方。订单号=order_list。订单编号;


放入数组AFieldsValue


&&以ORDER_LIST当前记录的订单号为查询条件,得到临时表中该订单的总金额。


&&因为订单号字段同时存在于临时表和当前工作区表中,所以应该在订单号字段之前添加表名。


&&所以查询条件可简化。订单号=order_list。订单号放在WHERE子句之后;疑问的结


&& fruit放入数据变量AFieldsValue,放入数组AFieldsValue。


替换为字段值的总量

& &用新的总金额替换当前记录的总金额字段。


跳过


ENDDO


全部关闭


SELECT * FROM ORDER _ LIST;


按总金额排序desc;


到表OD_NEW中


&&按总金额降序排列,所以总金额desc应该放在ORDER BY子句之后;将结果集


&&放入一个永久表OD_NEW,它放在INTO表的子句之后。


打开安全


开启通话


第三步:点击工具栏“保存”按钮,保存程序文件,文件名为prog1.prg


第四步:在项目管理器的“代码”选项卡上选择程序中的“prog1”,点击“运行”按钮执行程序。

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » 计算机等级考试:二级VFP机试第17套

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情