在考生文件夹下,打开公司销售数据库selldb,完成如下简单应用: (1)使用一对多表单向导生成一个名为sd_edit的表单。要求从父表dept中选择所有字段,从子表s_t表中选择所有字段,使用“部门号”建立两表之间的关系,样式为阴影式;按钮类型为图片按钮

admin2015-08-20  27

问题 在考生文件夹下,打开公司销售数据库selldb,完成如下简单应用:
(1)使用一对多表单向导生成一个名为sd_edit的表单。要求从父表dept中选择所有字段,从子表s_t表中选择所有字段,使用“部门号”建立两表之间的关系,样式为阴影式;按钮类型为图片按钮;排序字段为“部门号”(升序);表单标题为“数据输入维护”。
    (2)在考生文件夹下打开命令文件two.prg,该命令文件用来查询各部门的分年度的“部门号”、“部门名”、“年度”、“全年销售额”、“全年利润”和“利润率”(全年利润/全年销售额),查询结果先按“年度”升序、再按“利润率”降序排序,并存储到s_sum表中。
    注意,程序在第5行、第6行、第8行和第9行有错误,请直接在错误处修改。
    修改时,不可改变SQL语句的结构和短语的顺序,不允许增加或合并行。

选项

答案(1)步骤1:在命令窗口执行命令:OPEN DATABASE selldb,打开数据库环境。 步骤2:执行【文件】→【新建】菜单命令,或单击“常用”工具栏的“新建”按钮,在弹出的“新建”对话框中选中“表单”选项,然后单击“向导”图标按钮,系统弹出“向导选取”对话框,选中“一对多表单向导”项,单击“确定”按钮,启动表单向导。 步骤3:在表单向导的“步骤1.从父表中选定字段”界面的“数据库和表”下选中“dept”表,将“可用字段”中的字段全部添加到“选定字段”中,单击“下一步”按钮。 步骤4:在表单向导的“步骤2.从子表中选定字段”界面的“数据库和表”下选中“s_t”表,将“可用字段”中的字段全部添加到“选定字段”中,单击“下一步”按钮。 步骤5:在表单向导的“步骤3.建立表之间的关系”界面系统自动建立两个表的联系,单击“下一步”按钮。 步骤6:在表单向导的“步骤4.选择表单样式”界面中选中“样式”列表中的“阴影式”,再在“按钮类型”选项中选择“图片按钮”,单击“下一步”按钮。 步骤7:在表单向导的“步骤5.排序次序”界面中双击“可用的字段或索引标识”中的“部门号”字段到“选定字段”列表中,单击“下一步”按钮。 步骤8:在表单向导的“步骤6.完成”界面中的“请键入表单标题”下方文本框中输入“数据输入维护”,单击“完成”按钮。 步骤9:在“另存为”对话框的“保存表单为:”框中输入表单文件名sd_edit,单击“保存”按钮。 (2) 步骤1:在命令窗口执行命令:MODIFY COMMAND TWO.prg,打开two程序文件,文件中的命令代码如下: *下面的程序在第5行、第6行、第8行和第9行有错误,请直接在错误处修改。 *修改时,不可改变SQL语句的结构和短语的顺序,不允许增加或合并行。 1 OPEN DATABASE SELLDB 2 SELECT S_T.部门号,部门名,年度,; 3 一季度销售额+二季度销售额十三季度销售额+四季度销售额 AS 全年销售额,; 4 一季度利润+二季度利润十三季度利润+四季度利润AS全年利润,; 5一季度利润+二季度利润十三季度利润+四季度利润/一季度销售额十二季度销售额+三季度销售额+四季度销售额 AS利润率; 6 FROM S_T DEPT; 7 WHERE S_T.部门号=DEPT.部门号; 8 GROUP BY年度利润率DESC; 9 INTO S_SUM > 修改程序中的错误行,修改后的程序如下: 1 OPEN DATABASE SELLDB 2 SELECT S_T.部门号,部门名,年度,; 3 一季度销售额+二季度销售额+三季度销售额+四季度销售额 AS 全年销售额,; 4 一季度利润+二季度利润+三季度利润+四季度利润AS全年利润,; 5 (一季度利润+二季度利润+三季度利润+四季度利润)/(一季度销售额+二季度销售额+三季度销售额+四季度销售额) AS利润率; &&根据运算符的优先次序,此处表示式应先加后除,原程序中缺少括号 6 FROM S_T,DEPT; &&两个表之间应用逗号分开,而不是空格 7 WHERE S_T.部门号:DEPT.部门号, 8 ORDER BY年度,利润率DESC;&&字段排序的短语是ORDER BY,而非GROUPY,且两字段间要用逗号隔开 9 INTO TABLE S—SUM &&查询结果输出到表的短语是INTO TABLE,而非INTO短语 步骤2:保存文件修改,在命令窗口执行命令:DO TWO.prg,执行程序文件。

解析 (1)本题考查的是一对多表单向导的使用。在启动向导前,可以先打开数据库环境,这样在启动向导添加数据表时,可在向导界面中直接选中所需的数据表,本题是根据两个表进行操作的,在启动向导时注意选择“一对多表单向导”,其他的操作只需根据向导提示在各界面中完成即可。
    (2)本题主要考查的SQL查询语句的改错。此类型的题一般都不难,主要是考核对SQL查询语句格式的熟记情况。本题根据题目要求检查错误行,不难看出第5行属于visual FoxPro中运算符运算次序有错误;第6行在指定多个表时,表名间缺少逗号隔开,第8、9行都属于固定短语格式错误。
转载请注明原文地址:https://kaotiyun.com/show/tXEp777K
0

最新回复(0)