《计算机等级考试二级VFP上机模拟试题》由会员分享,可在线阅读,更多相关《计算机等级考试二级VFP上机模拟试题(11页珍藏版)》请在金锄头文库上搜索。
1、计算机等级考试二级 VFP 上机模拟试题(1)一、基本操作题(共四小题,第 1 和 2 题是 7 分、第 3 和 4 题是 8 分) 在考生目录下完成如下操作:1. 创建一个新的项目客户管理 。 2. 在新建立的项目客户管理 中创建数据库订货管理。 3. 在订货管理 数据库中建立表 order_list,表结构如下:客户号 字符型(6)订单号 字符型(6)订购日期 日期型 总金额 浮动型(15.2)4. 为 order_list 表创建一个主索引,索引名和索引表达式均是订单号 。 解答: 1.方法 1:利用菜单新建项目:单击“ 新建”工具或“文件”菜单下的“新建”菜单项,在“ 新建”对话框中选
2、择“项目” ,单击“ 新建文件 ”按钮,在出现的“创建”对话框中输入项目文件名“客户管理”,单击“确定” 按钮即可。 方法 2:利用命令创建项目: 在命令窗口中直接输入:CREATE PROJECT 客户管理 2.方法 1:利用菜单建立数据库 展开管理器中“数据” 选项。选择数据库,单击“ 新建”按钮,在弹出的选项中选择“ 新建数据库”,在打开的“ 创建” 对话框中输入数据库名:订货管理,最后单击“保存” 即可完成。 方法 2:利用命令建立数据库 在命令窗口中直接输入命令:CREATE DATABASE 订货管理 Application.Projects1.Files.Add(订货管理.dbc
3、)3.方法 1:利用菜单建立表结构 在刚建好的数据库中单击鼠标右键弹出一个快捷菜单(如下图) 。 选择“新建表”。在出现的对话框中单击“ 新建表”按钮,在后续的“ 创建”对话框中输入表名“order_list”, 完成后,会弹出“表设计器”,如下图: 在“表设计器”中分别输入每个字段的字段名、字段类型、字段宽度和小数位数,输入完毕,单击“确定”按钮,在随后的“是否输入记录”对话框中单击“ 否”按钮。 方法 2:利用命令直接建立表结构 在命令窗口中直接输入命令: open database 订货管理 create table order_list (客户号 C(6),订单号 C(6),订购日期
4、D,总金额 F(15,2)4.方法 1:使用“表设计器” 直接建立索引 单击“显示”菜单下的“ 表设计器 ”命令,打开 order_list 的“表设计器”,选择“索引”页框,在索引名项和表达式项均输入(或选择) “订单号”,索引类型选择“主索引”(如下图) ,单击“确定”按钮,在随后的确认对话框中单击“ 是”按钮。二、简单应用(2 小题,每题 20 分,计 40 分) 在考生目录下完成如下简单应用: 1. 将 order_list1 表中的全部记录追加到 order_list 表中,然后用 SQL SELECT 语句完成查询:按总金额降序列出所有客户的客户号、客户名及其订单号和总金额,并将结
5、果存储到results 表中(其中客户号、客户名取自 customer 表,订单号、总金额取自 order_list 表) 。 解答: (1)将 order_list1 表中的全部记录追加到 order_list 表中,用命令: use order_listappend from order_list1(2)使用 SQL 语句完成查询。 方法 1:利用查询设计器来完成。具体步骤为: 第一步:单击“文件” 菜单中的“ 新建”,在“新建”对话框中选择 “查询”,单击“新建文件”进入查询设计器,将 order_list 和 customer 两个表添加到查询设计器中。 注意,两个表联接的字段名是“客
6、户号” 第二步:选取字段。将试题要求的字段添加到选定字段列表中。 (注意:其中客户号、客户名取自 customer 表,订单号、总金额取自 order_list 表) 第三步:排序依据。单击“排序依据”页框,将“ 总金额”添加到“ 排序条件”列表框中,在“排序选项”选项组中选择“ 降序”。 第四步:确定输出去向 单击查询设计器中的“查询去向”按钮,或单击右键,在快捷菜单中选择“输出设置”。 在弹出的“查询去向” 对话框中,单击“ 表”按钮,并在“表名”列表框中输入表的名字:results。 第五步:运行查询。单击“运行按钮” ,即完成查询操作。 方法 2:利用命令完成。直接在命令框中输入下列
7、SQL 语句。 SELECT Customer.客户号, Customer.客户名, Order_list1. 订单号,;Order_list1.总金额 FROM customer INNER JOIN order_list1 ON Customer.客户号 =; Order_list1.客户号 ORDER BY Order_list1.总金额 DESC INTO TABLE results.dbf2. 打开 FORM1 表单,并按如下要求进行修改( 注意:最后保存所做的修改):(1) 表单中有 5 个随机排列的命令按钮,不要移动或改变 基准按钮的位置(否则影响成绩) ,然后使其他命令按钮与基
8、准按钮 左部对齐; (2) 在这组命令按钮的右边添加一个表格控件,并将它的 RecordSourceType 属性设置为 表,然后设置另一个相关属性使在表格控件中显示 customer 表的记录。 解答: (1)使用工具或菜单打开表单 Form1,在表单设计器中拖动鼠标(或按住 shift 再单击各按钮)选定所有命令按钮(注意:不要移动按钮) ,再单击布局工具栏中,左对齐工具,结果如下图: (2)打开表格控件工具栏,在表单的按钮右侧拖出一个表格,选中表格,进入“属性窗口” ,单击“数据”页框。改变以下两个参数:RecordSourceType 属性设置为表,RecordSource 属性为:c
9、ustomer,最后保存表单。三、综合应用(1 小题,计 30 分) 当 order_detail 表中的单价修改后,应该根据该表的单价和数量 字段修改 order_list 表的总金额字段,现在编写程序实现此功能,具体要求和注意事项如下:(1) 根据 order_detail 表中的记录重新计算 order_list 表的总金额字段的值 ;(2) 一条 order_list 记录可以对应几条 order_detail 记录;(3) 在编程前应保证在基础操作中正确地建立了 order_list 表,在简单应用中为该表追加了记录(注意只能追加一次);(4) 最后将 order_list 表中的记
10、录按总金额降序排序存储到 od_new 表中(表结构与order_list 表完全相同);(5) 将程序保存为 prog1.prg 文件。 解答: Prog1.prg 程序代码如下: Sele 订单号,sum(单价*数量) as 总金额 from order_detai1 group by 订单号 into table tset talk offuse t in 0index on 订单号 tag xxset order to tag xxuse order_list in 2select 2set relation to 订单号 into order_detailreplace all 总金
11、额 with t.总金额 sort on 总金额/desc to od_newset talk on附:本题相关表 计算机等级考试二级 VFP 上机模拟试题(2)一、基本操作题(共四小题,第 1 和 2 题是 7 分、第 3 和 4 题是 8 分) 在考生目录下的订货管理 数据库中完成如下操作 :1. 将 order_detail、order_list 和 customer 表添加到数据库。 2. 为 order_list 表创建一个主索引,索引名和索引表达式均是订单号 。 3. 建立表 order_list 和表 order_detail 间的永久联系(通过 订单号字段)。 4. 为以上建立
12、的联系设置参照完整性约束:更新规则为限制 ,删除规则为级联,插入规则为限制。 解答: 1、2、3 略。 4、首先在数据库设计器中,选择两表关系的联接线。 其次:进行“数据库清理” ,在“ 数据库”菜单中运行“数据库清理”命令。 再次:编辑参照完整性。选择联接线,单击鼠标右键则会弹出一个快捷菜单,在快捷菜单中单击“编辑参照完整性” ,打开“ 参照完整性生成器”对话框,在“ 参照完整性生成器”中按要求进行设置。二、简单应用(2 小题,每题 20 分,计 40 分) 在考生目录下完成如下简单应用: 1. 列出客户名为三益贸易公司 的订购单明细(order_detail)记录(将结果先按订单号升序排列
13、,同一订单的再按单价 降序排列),并将结果存储到 results 表中(表结构与order_detail 表结构相同)。 解答: 方法 1:利用查询设计器,略 方法 2:利用 SQL 语句,在命令窗口直接输入命令: SELECT * FROM 订货管理!order_detail ORDER BY Order_detail.订单号, Order_detail. 单价 DESC INTO TABLE results.dbf2. 考生目录下有一个 form1 表单文件,其中三个命令按钮 click 事件下的语句都是错误的,请按如下要求进行修改(最后保存所做的修改):(1) 单击刷新标题命令按钮时,使
14、表单的标题为简单应用;(2) 单击订单记录 命令按钮时,使表格控件中显示 order_list 表中的记录;(3) 单击关闭表单 命令按钮时,关闭表单。 注意:每处错误只能在原语句上进行修改,不可以增加语句。 1、刷新标题事件为:&使表单的标题为:简单应用 thisform=简单应用2、订单记录事件为:&在表格控件中显示 order_list 表的记录 thisform.grid1=order_list.dbf3、关闭表单事件为:&关闭表单 thisform.close解答: thisform=简单应用 应改为:thisform.caption=简单应用thisform.grid1=order
15、_list.dbf应改为: thisform.grid1.recordsource=”order_list.dbf” thisform.close 应改为:thisform.release三、综合应用(1 小题,计 30 分) 当 order_detail 表中的单价修改后,应该根据该表的单价和数量 字段修改 order_list 表的总金额字段,现在编写程序实现此功能,具体要求和注意事项如下:(1) 根据 order_detail 表中的记录重新计算 order_list 表的总金额字段的值 ;(2) 一条 order_list 记录可以对应几条 order_detail 记录;(3) 在编
16、程前应保证在基础操作中正确地建立了 order_list 表,在简单应用中为该表追加了记录(注意只能追加一次);(4) 最后将 order_list 表中的记录按总金额降序排序存储到 od_new 表中(表结构与order_list 表完全相同);(5) 将程序保存为 prog1.prg 文件。 解答: Prog1.prg 程序代码如下: Sele 订单号,sum(单价*数量) as 总金额 from order_detai1 group by 订单号 into table tset talk offuse t in 0index on 订单号 tag xxset order to tag xxuse order_list in 2select 2set relation to 订单号 into order_detailreplace a