首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
在做本题前首先确认在基础操作中已经正确地建立了order detail表,在简单应用中已经成功地将记录追加到order—detail表。 当order detail表中的“单价”修改后,应该根据该表的“单价”和“数量”字段修改order list表的“总金
在做本题前首先确认在基础操作中已经正确地建立了order detail表,在简单应用中已经成功地将记录追加到order—detail表。 当order detail表中的“单价”修改后,应该根据该表的“单价”和“数量”字段修改order list表的“总金
admin
2013-05-21
64
问题
在做本题前首先确认在基础操作中已经正确地建立了order detail表,在简单应用中已经成功地将记录追加到order—detail表。
当order detail表中的“单价”修改后,应该根据该表的“单价”和“数量”字段修改order list表的“总金额”字段,现在有部分order list记录的“总金额”字段值不正确,请编写程序挑出这些记录,并将这些记录存放到一个名为od mod的表中(与order list表结构相同,自己建立),然后根据order detail表的“单价”和“数量”字段修改od mod表的“总金额”字段(注意一个od mod记录可能对应几条order。detail记录),最后od mod表的结果要求按“总金额”:升序排序,编写的程序最后保存为progl.prg。
选项
答案
本大题主要考查的是SQL分组计算查询;DO WHILE循环结构。本题所设计的程序代码有些难度,需要考生好好掌握。基本解题思路可按以下步骤进行: 首先,根据order detail表的“单价”和“数量”数据,利用分组计算查询求出每组订单的“总金额”,将结果保存到一个临时表中。 然后,通过对order list表和临时表的联接查询,找出order list表中“总金额”字段与临时表中“总金额”不相同的记录,并将order list表中这些“总金额”不相同的记录输出到od mod表中。 接着利用DO WHILE循环语句对od mod表中的每条记录进行处理。通过sQL查询语句从临时表中先获得与od mod表当前所指记录“订单号”相同的“总金额”字段值,将该值保存到数组中,再通过REPLACE命令修改。dmd表当前记录的值,每处理完一条记录,记录指针便指向下一条记录,一直到处理完od mod表中的所有记录。 最后将od mod表的记录按“总金额”排序,由于查询结果不能覆盖正在作为查询数据源的表,因此,可以通过一个临时表过渡,保存排序的表记录,再通过临时表将排好序的记录再保存回原数据表中。 【操作步骤】 步骤1:在命令窗口执行命令:—MODIFY COM—MAND progl,打开程序文件编辑器。 步骤2:在编辑器中输入如下程序代码: 1 SELECT订单号,SUM(单价*数量)AS总金额; 2 FROM Order—detail; 3 GROUP BY订单号; 4 INTO CURSOR arrtable 5 SELECT order一1iSt.*j 6 FROM Order~1iSt,arrtable; 7 WHERE order 1 ist.订单号=arrtable.订 单号 AND order—list.总金额<> arrtable.总金额; 8 INTO TABLE od—mod 9 USE od—mod 10 DO WHILE NOT EOF() 11 SELECT arrtable.总金额 FROM arrtable; 12 WHERE arrtable.订单号=od—mod.订单号; 13 INTO ARRAY amr 14 REPLACE总金额WITH arr 15 SKIP 15 ENDDO 16 CLOSE ALL 17 SELECT*FROM od—mod ORDER BY总金额; 18 INTO CURSOR arrtablel 19 SELECT*FROM arrtablel INTO TABLE od—mod 步骤3:保存文件修改,在命令窗口执行命令,执行程序文件。
解析
转载请注明原文地址:https://www.kaotiyun.com/show/8Uop777K
本试题收录于:
二级VF题库NCRE全国计算机二级分类
0
二级VF
NCRE全国计算机二级
相关试题推荐
下列程序的运行结果是【】。SETTALKOFFS=0FORN=1TO100S=S+NIFN>=10EXITS=NENDIFNEXT?SRETURN
主索引的关键字段值是()的。
若要恢复逻辑删除的若干记录,应该()。
数据的物理结构在计算机存储空间中的存放形式称为数据的【】。
在给自由表的字段命名时,一个字段名最多可使用______B字符。
在数据库中,产生数据不一致的根本原因是______。
在VisualFoxPro中,以下有关SQL,的SELECT语句的叙述中,错误的是
在一个表单中有一个“打印报表”命令按钮,其功能是在打印机上输出报表:学生.frx,在命令按钮的Click事件的代码中应输入的命令是【】。
顺序执行下面命令后,屏幕显示的结果是(,)。S=“HappyChineseNewYear!”T=“CHINESE”?AT(T,S)
在SQL语句中,当子查询返回的值是一个集合时,使用______可完全代替ANY。
随机试题
设,则f(x)在x=1处()
Thelawyeradvisedhimtodropthe______,sincehestandslittlechancetowin.
A.风邪B.寒邪C.暑邪D.湿邪E.燥邪外感六淫致病,易袭阴位的邪气是
A.使对方能听懂和理解自己所说的意思B.提问时简明扼要C.不轻易打断对方的讲话D.对对方的所说的表示理解和赞同E.不理睬对方在人际传播技巧中
药物信息的三次文献包括
产品成本计算的方法有()。
所有的运营流程都涉及到()过程。
下列词语中没有错别字的一组是()。
移动支付
马克思指出:“哲学家们只是用不同的方式解释世界,而问题在于改变世界”。这说明()
最新回复
(
0
)