为“部门信息“表增加一个新字段“人数”,编写满足如下要求的程序:根据“雇员信息”表中的“部门号”字段的值确定“部门信息”表的“人数”字段的值,即对“雇员信息”表中的记录按“部门号”归类。将“部门信息”表中的记录存储到ate表中(表结构与“部门信息”表完全相

admin2009-02-15  30

问题 为“部门信息“表增加一个新字段“人数”,编写满足如下要求的程序:根据“雇员信息”表中的“部门号”字段的值确定“部门信息”表的“人数”字段的值,即对“雇员信息”表中的记录按“部门号”归类。将“部门信息”表中的记录存储到ate表中(表结构与“部门信息”表完全相同)。最后将程序保存为myp.prg,并执行该程序。


    在命令窗口中输入命令:MODIFY COMMAND myp,在弹出的程序编辑窗口中输入如下程序段:
   ******程序文件myp.prg中的程序段**********************
   ALTER TABLE部门信息ADD人数I
   SELECT部门号,COUNT(*)AS人数FROM雇员信息;
     GROUP BY部门号;
     INTO CURSOR atemp
   DO WHILE NOT EOF()
     UPDATE部门信息SET人数=atemp.人数;
      WHERE部门信息.部门号=atemp.部门号
     SKIP
    ENDDO
   SELECT * FROM部门信息INTO TABLE ate
   ********************************************************
   在命令窗口执行命:DO myp,运行程序,通过BROWSE命令可查看查询结果,程序运行结果如图3-26所示。

选项

答案在命令窗口中输入命令:MODIFY COMMAND myp,在弹出的程序编辑窗口中输入如下程序段: ******程序文件myp.prg中的程序段********************** ALTER TABLE部门信息ADD人数I SELECT部门号,COUNT(*)AS人数FROM雇员信息; GROUP BY部门号; INTO CURSOR atemp DO WHILE NOT EOF() UPDATE部门信息SET人数=atemp.人数; WHERE部门信息.部门号=atemp.部门号 SKIP ENDDO SELECT * FROM部门信息INTO TABLE ate ******************************************************** 在命令窗口执行命:DO myp,运行程序,通过BROWSE命令可查看查询结果,程序运行结果如图3-26所示。 [*]

解析 本大题主要考查的是SQL语句的应用,字段的增加用到数据表的定义语句,考生应该熟悉 COUNT函数的应用,在SQL语句设计过程中可利用临时表来存放查询结果,再利用DO循环语句对表中的记录逐条更新。
转载请注明原文地址:https://kaotiyun.com/show/A0KZ777K
0

最新回复(0)