表“员工”中字段“加班费”的值为空,编写满足如下要求的程序:根据“值班”表中的夜和昼的加班费的值和“员工”表中各人昼夜值班的次数确定员工表的“加班费”字段的值,最后将程序保存为myprog.prg,并执行该程序。

题目

表“员工”中字段“加班费”的值为空,编写满足如下要求的程序:

根据“值班”表中的夜和昼的加班费的值和“员工”表中各人昼夜值班的次数确定员工表的“加班费”字段的值,最后将程序保存为myprog.prg,并执行该程序。


相似考题
更多“表“员工”中字段“加班费”的值为空,编写满足如下要求的程序: 根据“值班”表中的夜和昼的加班费的值 ”相关问题
  • 第1题:

    (1)在“zhibian”数据库中根据“zhibian”表中的标准,统计计算“yuangon9”表中的“加班费”,并将结果写入"yuangon9”表中的“加班费”字段。

    (2)建立视图“view1”,包括“职工编码”、“姓名”和“夜值班天数”等字段,内容是夜值班天数在3天以上的员工。建立表单“Forml”,在表单上显示视图“view1”的内容。


    正确答案:
    (1)【操作步骤】
    在命令窗口输入如下代码:
    SELECT每天加班费FROM zhibian WHERE值班时间=“夜”INTO ARRAY a1
    SELECT每天加班费FROM zhibian WHERE值班时间=“昼”INTO ARRAY a2
    UPDATE yuangong SET加班费=yuangong.夜值班天数*a1(1,1)+yuangong.昼值班天数*a2(1,1)
    (2)【操作步骤】
    ①选择【文件】→【打开】,在列表框中选择“数据库”,打开“图书借阅”数据库,然后选择【文件】→【新建】选择“视图”,然后将“yuangong”表添加到视图设计中。
    ②在“字段”选项卡中,将“可用字段”列表框中的题目要求的字段添加到“选定字段”中。
    ③在“筛选”选项卡中,在“字段名”选择“yuangong夜班值班天数”,“条件”选择为“>”,在“实例”中填入“3”。
    ④保存视图,然后在命令窗口输入CREATE FORM Form1,新建一个表单,然后单击右键,选择数据环境,选择“视图”,将“view1”添加到数据环境设计器中,然后将“view1”拖入表单中。
    ⑤保存表单。

  • 第2题:

    在“值班信息”数据库中统计“员工信息”表中的“加班费”,并将结果写入“员工信息”表中的“加班费”字段。

    (2)建立视图shitu,包括“职工编码”,“姓名”和“夜值班天数”等字段,内容是夜值班天数在3天以上的员工。建立表单biao,在表单上显示视图shitu的内容。


    正确答案:(1)在命令窗口中输入命令;MODIFY COMMANDquery1在程序文件编辑器窗口输入如下程序段; ****文件query1.prg中的程序代码***** SELECT职工编码夜值班天数*200+昼值班天数*150AS加班费; FROM 员工信息; INTO CURSOR atemp DO WHILE NOTEOF() UPDATE员工信息 SET 加班费=atemp.加班费; WHERE员工信息.职工编码=atemp.职工编码 SKIP ENDDO ************************************** 保存设计结果在命令窗口输入命令;DOquery1.prg执行程序文件结果如图3-133所示。 (2)从菜单栏里单击“文件”并选择“打开”或直接单击工具栏上的“打开”图标在弹出的对话框中选择要打开的数据库文件“值班信息.dbc”。 在“数据库设计器”工具栏中单击“新建本地视图”按钮在弹出的“新建本地视图”对话框中单击“新建视图”按钮打开视图设计器将“员工信息”数据表添加到视图设计器中根据题意在视图设计器的“字段”选项卡中将“可用字段”列表框中的字段“员工信息.职工编码”“员工信息.姓名”和“员工信息.夜值班天数”添加到右边的“选定字段”列表框里中;在“筛选”选项卡中字段名选择“员工信息.夜值班天数”条件选择“>”实例选项中输入3完成视图设计将视图以shitu文件名保存在考生文件夹下。 在命令窗口输入命令:CREATE FORM biao打开表单设计器新建表单。 在表单设计器中鼠标右键单击空白表单选择“数据环境”快捷菜单命令打开表单的数据环境在“选定”单选框中选择“视图”将视图文件shitu添加到数据环境中将数据环境中的视图文件shitu拖放到表单中可看到在表单中出现一个表格控件此时实现了视图文件shitu的窗口式输入界面运行表单结果如图3-134所示。
    (1)在命令窗口中输入命令;MODIFY COMMANDquery1,在程序文件编辑器窗口输入如下程序段; ****文件query1.prg中的程序代码***** SELECT职工编码,夜值班天数*200+昼值班天数*150AS加班费; FROM 员工信息; INTO CURSOR atemp DO WHILE NOTEOF() UPDATE员工信息 SET 加班费=atemp.加班费; WHERE员工信息.职工编码=atemp.职工编码 SKIP ENDDO ************************************** 保存设计结果,在命令窗口输入命令;DOquery1.prg,执行程序文件,结果如图3-133所示。 (2)从菜单栏里单击“文件”并选择“打开”,或直接单击工具栏上的“打开”图标,在弹出的对话框中选择要打开的数据库文件“值班信息.dbc”。 在“数据库设计器”工具栏中,单击“新建本地视图”按钮,在弹出的“新建本地视图”对话框中,单击“新建视图”按钮,打开视图设计器,将“员工信息”数据表添加到视图设计器中,根据题意,在视图设计器的“字段”选项卡中,将“可用字段”列表框中的字段“员工信息.职工编码”,“员工信息.姓名”和“员工信息.夜值班天数”添加到右边的“选定字段”列表框里中;在“筛选”选项卡中,字段名选择“员工信息.夜值班天数”,条件选择“>”,实例选项中输入3,完成视图设计,将视图以shitu文件名保存在考生文件夹下。 在命令窗口输入命令:CREATE FORM. biao,打开表单设计器新建表单。 在表单设计器中,鼠标右键单击空白表单,选择“数据环境”快捷菜单命令,打开表单的数据环境,在“选定”单选框中选择“视图”,将视图文件shitu添加到数据环境中,将数据环境中的视图文件shitu拖放到表单中,可看到在表单中出现一个表格控件,此时实现了视图文件shitu的窗口式输入界面,运行表单,结果如图3-134所示。 解析:本大题1小题主要考查的是SQL语句的应用,设计过程中可利用临时表来存放查询结果,再利用DO循环语句对表中的记录逐条更新。2小题主要考查的是视图的建立,以及表单与视图的连接。需要注意的是新建视图文件时,首先应该打开相应的数据库,且视图文件在磁盘中是找不到的,直接保存在数据库中;在表单中定数据环境,通过表单的数据环境快速建立表单控件和视图之间的联系。

  • 第3题:

    首先为order_detail表增加一个新字段:新单价(类型与原来的单价字段相同),然后编写满足如下要求的程序:根据order_list表中的“订购日期”字段的值确定order_detail表的“新单价”字段的值,原则是:订购日期为2001年的“新单价”字段的值为原单价的90%,订购日期为2002年的“新单价”字段的值为原单价的110%(注意:在修改操作过程中不要改变order_detail表记录的顺序),将order_detail表中的记录存储到od_new表中(表结构与order_detail表完全相同)。最后将程序保存为prog1.prg,并执行该程序。

    接着再利用Visual FoxPro的“快速报表”功能建立一个的简单报表,该报表内容按顺序含有order_detail表的订单号、器件号、器件名、新单价和数量字段的值,将报表文件保存为report1。


    正确答案:在命令窗口输入命令:USE order_detail &&打开数据表 MODIFY STRUCTURE &&打开表设计器 打开表设计器后在“字段”选项卡的“数量”字段后增加一个新的字段根据题意输入字段名:新单价字段宽度和类型与“单价”字段一样。 在命令窗口输入命令:MODIFY COMMAND prog1在程序编辑窗口中输入如下程序段: **********文件prog1.prg中的程序段********** SET TALK OFF &&将订购日期是2001年的所有的订单号放入临时表curtable中 SELECT订单号FROM order_list WHERE YEAR(订购日期)=2001; INTO CURSOR curtable && 对所有订购日期是2001年的计算新的单价 DO WHILE NOT EOF() UPDATE order_detail SET新单价=单价*0.9; WHERE订单号=curtable.订单号 SKIP ENDDO && 将订购日期是2002年的所有的订单号放入临时表CurTable中 SELECT订单号FROM order_list WHERE YEAR(订购日期)=2002; INTO CURSOR curtable && 对所有订购日期是2002年的计算新的单价 DO WHILE NOT EOF() UPDATE order detail SET新单价=单价*1.1; WHERE 订单号=curtable.订单号 SKIP ENDDO CLOSE ALL USE order_detail COPY TO od_new SET TALK ON ****************************************** 保存设计结果在命令窗口输入命令:DO prog1执行程序文件。 在命令窗口输入命令:CREATE REPORT report1打开报表设计器。选择菜单命令“报表”—“快速报表”系统首先要求选择报表数据源。根据题意选择考生文件夹下的order_detail表作为报表数据源。系统接着弹出“快速报表对话框”单击对话框中的“字段”命令按钮在弹出的“字段选择器”对话框中依次选择订单号、器件号、器件名、新单价和数量5个字段添加到“选定字段”列表框中如图3-62所示。单击“确定”按钮返回报表设计器保存报表设计。单击工具栏中的预览按钮可查看设计效果。
    在命令窗口输入命令:USE order_detail &&打开数据表 MODIFY STRUCTURE &&打开表设计器 打开表设计器后,在“字段”选项卡的“数量”字段后增加一个新的字段,根据题意输入字段名:新单价,字段宽度和类型与“单价”字段一样。 在命令窗口输入命令:MODIFY COMMAND prog1,在程序编辑窗口中输入如下程序段: **********文件prog1.prg中的程序段********** SET TALK OFF &&将订购日期是2001年的所有的订单号放入临时表curtable中 SELECT订单号FROM order_list WHERE YEAR(订购日期)=2001; INTO CURSOR curtable && 对所有订购日期是2001年的计算新的单价 DO WHILE NOT EOF() UPDATE order_detail SET新单价=单价*0.9; WHERE订单号=curtable.订单号 SKIP ENDDO && 将订购日期是2002年的所有的订单号放入临时表CurTable中 SELECT订单号FROM order_list WHERE YEAR(订购日期)=2002; INTO CURSOR curtable && 对所有订购日期是2002年的计算新的单价 DO WHILE NOT EOF() UPDATE order detail SET新单价=单价*1.1; WHERE 订单号=curtable.订单号 SKIP ENDDO CLOSE ALL USE order_detail COPY TO od_new SET TALK ON ****************************************** 保存设计结果,在命令窗口输入命令:DO prog1,执行程序文件。 在命令窗口输入命令:CREATE REPORT report1,打开报表设计器。选择菜单命令“报表”—“快速报表”,系统首先要求选择报表数据源。根据题意,选择考生文件夹下的order_detail表作为报表数据源。系统接着弹出“快速报表对话框”,单击对话框中的“字段”命令按钮,在弹出的“字段选择器”对话框中,依次选择订单号、器件号、器件名、新单价和数量5个字段添加到“选定字段”列表框中,如图3-62所示。单击“确定”按钮,返回报表设计器,保存报表设计。单击工具栏中的预览按钮,可查看设计效果。 解析:本大题考查的主要是SQL语句的应用,包括数据定义、数据修改和数据查询功能,设计过程中可利用临时表来存放查询结果,再利用DO循环语句对表中的记录逐条更新。

  • 第4题:

    对考生文件夹下的数据库“职员管理”中的“员工信息”表和“职称”表完成如下操作:

    (1)为表“职称”增加两个字段“人数”和“明年人数”,字段类型均为整型。

    (2)编写命令程序“cx2”,查询职员中拥有每种职称的人数,并将其填入表“职称”的“人数”字段中,根据职称表中的“人数”和“增加百分比”,计算“明年人数”的值,如果增加的人数不足一个,则不增加。

    (3)运行该程序。


    正确答案:
    【考点指引】本大题主要考查利用SQL语句对数据表的结构和数据进行修改,重点是分组命令的使用及数值字段的计算。
    【操作步骤】
    ①在命令窗口中输入命令:MODICOMMcx2(回车执行),打开程序文件编辑窗口,在程序文件编辑窗口中输入以下程序代码:
    ALTERTABLE职称ADD人数INT
    ALTERTABLE职称ADD明年人数INT
    SELECT职称编号,COUNT(*)INTOARRAYaaFROM员工信息GROUPBY职称编号
    FORi=1TOALEN(aa)/2
    UPDATE职称SET人数=aa(i,2)WHERE职称编号=aa(i,1)
    NEXT
    UPDATE职称SET明年人数=IIF(人数*增加百分比<1,0,人数*增加百分比)
    关闭程序文件编辑窗口并保存程序文件。
    ②在命令窗口中输入命令:DOcx2(回车执行),执行程序文件。

  • 第5题:

    对考生文件夹下的数据库“员工管理”中的“员工信息”表和“职称信息”表完成如下操作:

    ①为表“职称信息”增加两个字段“人数”和“明年人数”,字段类型均为整型。

    ②编写命令程序myp,查询职工中拥有每种职称的人数,并将其填入表“职称”的“人数”字段中,根据职称表中的“人数”和“增加百分比”,计算“明年人数”的值,如果增加的人数不足一个,则不增加。

    ③运行该程序。


    正确答案:从菜单栏里单击“文件”并选择“打开”或直接单击工具栏上的“打开”图标在弹出的对话框中选择要打开的数据库文件“员工信息管理.dbc”。 在数据库设计器中右键单击数据库表“职称信息”在弹出的快捷菜单中选择“修改”菜单命令进入“职称信息”的数据表设计器界面在“字段”选项卡中单击右边的“插入”命令按钮在字段名中输入“人数”类型为“整型”用同样的方法增加“明年人数”字段。单击右边“确定”按钮。 在命令窗口中输入命令:MODIFY COMMANDmyp在弹出的程序编辑窗口中输入如下代码: ***********文件myp.prg中的程序代码********** SELECT员工信息.职称代码增加百分比COUNT(*)AS人数; FROM员工信息职称信息; WHERE员工信息.职称代码:职称信息.职称代码; GROUP BY员工信息.职称代码; INTO CURSOR atemp DO WHILE NOT EOF() UPDATE职称信息 SET 人数=atemp.人数明年人数=atemp.人数+; atemp.人数*atemp.增加百分比/100; WHERE职称信息.职称代码=atemp.职称代码 单击菜单中的“程序”—“运行”来运行程序结果如图3-132所示。
    从菜单栏里单击“文件”并选择“打开”,或直接单击工具栏上的“打开”图标,在弹出的对话框中选择要打开的数据库文件“员工信息管理.dbc”。 在数据库设计器中,右键单击数据库表“职称信息”,在弹出的快捷菜单中选择“修改”菜单命令,进入“职称信息”的数据表设计器界面,在“字段”选项卡中,单击右边的“插入”命令按钮,在字段名中输入“人数”,类型为“整型”,用同样的方法增加“明年人数”字段。单击右边“确定”按钮。 在命令窗口中输入命令:MODIFY COMMANDmyp,在弹出的程序编辑窗口中输入如下代码: ***********文件myp.prg中的程序代码********** SELECT员工信息.职称代码,增加百分比,COUNT(*)AS人数; FROM员工信息,职称信息; WHERE员工信息.职称代码:职称信息.职称代码; GROUP BY员工信息.职称代码; INTO CURSOR atemp DO WHILE NOT EOF() UPDATE职称信息 SET 人数=atemp.人数,明年人数=atemp.人数+; atemp.人数*atemp.增加百分比/100; WHERE职称信息.职称代码=atemp.职称代码 单击菜单中的“程序”—“运行”来运行程序,结果如图3-132所示。 解析:本大题主要考查的是字段的增加以及记录的更新,字段的增加可在表设计器中完成,更新记录可以利用SQL语句,设计过程中可利用临时表来存放查询结果,再利用DO循环语句对表中的记录逐条更新。