1、上机操作题模拟试卷 11及答案与解析 一、基本操作题 1 在考生文件夹下的 “订货管理 ”数据库中完成如下操作: (1)将 order detail、 order list和 customer表添加到数据库。 (2)为 order list表创建一个主索引,索引名和索引表达式均是 “订单号 ”。 (3)建立表 order list和表 order detail间的永久联系 (通过 “订单号 ”字段 )。 (4)为以上建立的联系设置参照完整性约束:更新规则为 “限制 ”,删除规则为 “级联 ”,插入规则为 “限 制 ”。 二、简单应用题 2 (1)列出客户名为 “三益贸易公司 ”的订购单明细 (
2、order detail)记录 (将结果先按 “订单号 ”升序排列,同一订单的再按 “单价 ”降序排列 ),并将结果存储到 results表中(表结构与 order detail表结构相同 )。 (2)考生文件夹下有一个 forml表单文件,其中三个命令按钮 Click事件下的语句都是错误的,请按如下要求进行修改 (最后保存所做的修改 ): 单击 “刷新标题 ”命令按钮时,使表单的标题为 “简单应用 ”。 单击 “订单记录 ”命令按钮时,使表格控件 中显示 order list表中的记录。 单击 “关闭表单 ”命令按钮时,关闭表单。 注意:每处错误只能在原语句上进行修改,不可以增加语句。 三、
3、综合应用题 3 首先为 order detail表增加一个新字段:新单价 (类型与原来的单价字段相同 ),然后编写满足如下要求的程序:根据 order-list表中的 “订购日期 ”字段的值确定 order detail表的 “新单价 ”字段的值,原则是: “订购日期 ”为 2001年的 “新单价 ”字段的值为原单价的 90,订购日期为 2002年的 “新单价 ”字段的值为原单价的 110 (注意:在修改操作过程中不要改变 orderdetail表记录的顺序 ),最后将程序保存为progl prg,并执行该程序。 接着再利用 Visual FoxPro的 “快速报表 ”功能建立一个的简单报表,
4、该报表内容按顺序含有 orderl-detail表的 “订单号 ”、 “器件号 ”、 “器件名 ”、 “新单价 ”和 “数量 ”字段的值,将报表文件保存为 reportl frx。 上机操作题模拟试卷 11答案与解析 一、基本操作题 1 【正确答案】 本大题考查了数据库设计器的使用;索引的建立及永久联系的建立;参照完整性的设置。 为数据库表建立索引可以在表设计器中进行,在表设计器的 “字段 ”选项卡中,可以通过选择 “排序 ”下拉框中的 “升序 ”或 “降序 ”为指定的字段建立一个索引名与索引表达式相同的普通索引,如果要改变索引名或索引类型,则需要在 “索引 ”选项卡中进行修改。 在建立参照完
5、整性前要先建立两个表的关联,且有一个表中必须建立关联字段的主索引 (或候选索引 ),另一个表要建立普通索引,建立两个表联系后要先清理数据库,然后再设置参照完整性。 【操作步骤】 (1) 在命令窗口执行命令: MODIFY DATABASE订管理,打开数据库设计器。 在数据库设计器中右击鼠标,选择【添加表】快捷菜单命令,在弹出的 “打开 ”对话框中双击 order detail表,将表添加到数据库中,以同样的方法将 orderlist表和 customer表添加到数据库中。 (2)在数据库设计器中,右击 order list表,选择【修改】快捷菜单命令,打开order list表设计器,在 “字
6、段 ”选项卡中选中 “订单号 ”,在 “索引 ”列中选择 “升序 ”,然后在 “索引 ”选项卡中修改 “索引类型 ”为主索引,建立 “订单号 ”字段的主索引,单击 “确定 ”按钮保存表结构修改。 (3) 在数据库设计器中,右击 orderdetail表,选择【修改】快捷菜单命令,打开 order detail表设计器,在 “字段 ”选项卡中选中 “订单号 ”,在 “索引 ”列中选择 “升序 ”,建立 “订单号 ”字段的普通索引,单击 “确定 ”按钮保存表结构修改。 在数据库设计器中,拖动 orderlist表 “索引 ”下方的主索引 “订单号 ”到 order detail表 “索引 ”下方的
7、普通索引 “订单号 ”上,为两个表建立联系。 (4) 选中 order list和 order detail两个表之间的关联线 (被选中的线会变粗 ),执行【数据库】一【清理数据库】菜单命令,清空数据库表中带有删除标记的记录,然后执行【数据库】 -【编辑参照完整性】菜单命令。 在打开的 “参照完整性 ”对话框的表格中,选择 “更新 ”下的单元格内容为 “限制 ”: “删除 ”下的单元格内容为 “级联 ”; “插入 ”下的单元格内容为 “限制 ”。单击 “确定 ”按钮保存参照完整性的修改。 【知识模块】 上机操作题 二、简单应用题 2 【正确答案】 (1)本题主要考查了 SQL的联接查询。本题的
8、关键是判断查询用到了哪些表以及如何设置查询条件。根据题意,该查询用到了 order detail、 order list和 customer三张表,查询条件可以根据表中的关联字段得出。 另外,注意排序依据的设置,本题为双重排序,要将第一排序次序放前面。 【操作步骤】 在命令窗口执行如下 SQL命令语句完成查询: (注意:以上 SQL语句是根据查询文件完成的,大家也可以通过查询设计器完成本题操作。 ) (2)本题主要考查了表 单及控件常用属性和方法的设置。表单的标题属性为Caption。释放和关闭表单的方法是 Relea se。 【操作步骤】 步骤 1:在命令窗口执行命令: MODIFY FOR
9、M forml,打开表单设计器修改表单。 步骤 2:双击表单中的 “刷新标题 ”按钮,看到该按钮的 Click事件中代码如下: THIsFORM=”简单应用 ” 修改后的代码如下: TH工 sFORM CA PTION=”简单应用 ” 步骤 3:双击表单中的 “订单记录 ”按钮,看到该按钮的 Click事 件中代码; 步骤 4:双击表单中的 “关闭表单 ”按钮,看到该按钮的 Click事件中代码如下: THISFORM CLOSE 修改后的代码如下: THISFORM RELEASE 步骤 5:单击 “常用 ”工具栏中的 “运行 ”按钮查看结果,将表单文件保存到考生文件夹下。 【知识模块】 上
10、机操作题 三、综合应用题 3 【正确答案】 本题主要考查的是程序文件的建立、 SQL查询、 SQL定义、 SQL更新和快速报表的建立。 本题的基本解题思路是:首先通过 SQL定义语句为表建立 一个新字段,然后通过两个 SQL更新语句分别针对订单是 2001年和 2002年的记录更新 “新单价 ”的值,其中,更新判断条件可以通过 SQL。查询语句得到满足条件的记录。 注意,浮动型字段用字母 F表示,对于 sQL定义语句不太熟悉的考生,也可以在数据表设计器中增加新字段。 快速报表的建立需要在报表设计器中进行,在报表设计器中可以通过菜单命令启动建立快速报表的功能,建立快速报表应先指定报表的数据源。
11、【操作步骤】 步骤 1:在命令窗口执行命令: MODIFY COMMANDPROG 1,新建程序并打开程序编辑器。 步骤 2: 在程序编辑器中输入如下程序代码: 1 ALTER TABLE order-detail ADD新单价 F(10, 2) 2 uPDATE 0rderdetail sET新单价 =单价 *0 9; 3 WHERE订单号 =; 4 (SELECT订单号FROM 0rderlist; s WHERE订单号 =0rderdetail订单号 AND YEAR(订购日期 ): 2001) 6 uPDATE ordeLdetail SEI新单价 =单价 *1 1; 7 WHERE订
12、单号 =; 8 (sEIJECT订单号 FROM 0rderlistj 9 WHERE订单号 =0rderdetail订单号 AND YEAR (订购日期 ): 2002) 步骤 3:单击 “常用 ”工具栏中的 “运行 ”按钮运行程序。 步骤 4:在命令窗口执行命令: uSE orderdetail,打开 order detail表。 步骤 5:在命令窗口执行命令: CREATE REPORTreportl,打开报表设计器,然后执行【报表】【快速报表】菜单命令,在弹出的 “快速报表 ”对话框中单击 “字段 ”按钮,依次双击 “所有字段 ”列表框中的 “订单号 ”、 “器件号 ”、 “器件名 ”、 “新单价 ”和 “数量 ”字段,将其添加到 “选定字段 ”列表框中,单击 “确定 ”按钮新建快速报表,预览和保存报表。如图 3 30和图 3 3l所示。 【知识模块】 上机操作题