1、国家二级 VF 机试-试卷 176 及答案解析(总分:12.00,做题时间:90 分钟)一、基本操作题(总题数:2,分数:4.00)1.基本操作题()(分数:2.00)_2.在考生文件夹下完成下列基本操作: (1)新建一个名为“图书管理”的项目。 (2)在项目中建立一个名为“图书”的数据库。 (3)将考生文件夹下的所有自由表添加到“图书”数据库中。 (4)在项目中建立查询 book_ qu,查询价格大于等于 10 的图书(book 表)的所有信息,查询结果按“价格”降序排序。(分数:2.00)_二、简单应用题(总题数:2,分数:4.00)3.简单应用题()(分数:2.00)_4.(1)建立视图
2、 shitu,并将定义视图的代码放到 my.txt 中。具体要求是:视图中的数据取自数据库“送货管理”中的“送货”表。按“总金额”排序(降序)。其中“总金额=价格*数量”。 (2)使用一对多报表向导建立报表。要求:父表为“产品信息”,子表为“外型信息”。从父表中选择所有字段。从子表中选择所有字段。两个表通过“产品编号”建立联系,按“产品编号”升序排序。报表样式选择“随意式”,方向为“纵向”。报表标题为“送货浏览”。生成的报表文件名为 myr。(分数:2.00)_三、综合应用题(总题数:2,分数:4.00)5.综合应用题()(分数:2.00)_6.对考生文件夹下表“客户”和“定货”完成如下操作:
3、 为表客户增加一个字段,字段名为“应付款”,字段类型为数值型,宽度为 10,小数位数为 2。 编写程序 myp 统计表“定货”中每个客户的费用总和,并将该值写入表“客户”的对应客户的“应付款”字段。 运行该程序。(分数:2.00)_国家二级 VF 机试-试卷 176 答案解析(总分:12.00,做题时间:90 分钟)一、基本操作题(总题数:2,分数:4.00)1.基本操作题()(分数:2.00)_解析:2.在考生文件夹下完成下列基本操作: (1)新建一个名为“图书管理”的项目。 (2)在项目中建立一个名为“图书”的数据库。 (3)将考生文件夹下的所有自由表添加到“图书”数据库中。 (4)在项目
4、中建立查询 book_ qu,查询价格大于等于 10 的图书(book 表)的所有信息,查询结果按“价格”降序排序。(分数:2.00)_正确答案:(正确答案:(1)在命令窗口直接输入命令:CREATE PROJECT 图书管理,新建一个项目管理器,保存到考生文件夹下。 (2)在项目管理器中,单击“数据”选项卡,然后选中列表框中的“数据库”,单击选项卡右边的“新建”命令按钮,在弹出的“创建”对话框中输入新的数据库名称“图书”,保存到考生文件夹下。 (3)在项目中新建数据库后,系统弹出数据库设计器,右击数据库设计器,在弹出的快捷菜单中选择“添加表”菜单命令,在“打开”对话框中,依次将考生文件夹下所
5、有的自由表添加到数据库中。(4)在“数据”选项卡中选中“查询”,然后单击“新建”命令按钮,单击“新建查询”对话框中的“新建查询”按钮,打开查询设计器,将数据表 book 添加到查询设计器中。根据题意,在查询设计器的“字段”选项卡中,将“可用字段”列表框中的字段全部添加到右边的“选定字段”列表框中,再单击“筛选”选项卡,在“字段名”下拉框中选择“book.价格”字段,在“条件”下拉框中选择“=”,在“实例”文本框中输入“10”,然后在“排序依据”选项卡中将“选定字段”列表框中的“book.价格”字段添加到右边的“排序条件”中,在“排序选项”中选择“降序”,利用菜单命令“查询” “运行查询”,浏览
6、查询结果。查询文件以 book_ qu 名保存在考生文件夹下。)解析:解析:本大题考查的是通过项目管理器来完成一些数据库及数据库表的基本操作,项目的建立可以直接在命令窗口输入命令来实现,数据库的建立及数据库表的添加,可以通过项目管理器中的命令按钮,打开相应的设计器进行操作。二、简单应用题(总题数:2,分数:4.00)3.简单应用题()(分数:2.00)_解析:4.(1)建立视图 shitu,并将定义视图的代码放到 my.txt 中。具体要求是:视图中的数据取自数据库“送货管理”中的“送货”表。按“总金额”排序(降序)。其中“总金额=价格*数量”。 (2)使用一对多报表向导建立报表。要求:父表为
7、“产品信息”,子表为“外型信息”。从父表中选择所有字段。从子表中选择所有字段。两个表通过“产品编号”建立联系,按“产品编号”升序排序。报表样式选择“随意式”,方向为“纵向”。报表标题为“送货浏览”。生成的报表文件名为 myr。(分数:2.00)_正确答案:(正确答案:(1)在命令窗口输入命令:MODIFY FILE my,打开文本编辑器,在编辑器中输入以下程序段: *文件 my.txt 中的程序段* OPEN DATABASE 送货管理.dbc CREATE VIEW shitu AS; SELECT 订单号,器件号,器件名,价格,数量,价格*数量 AS 总金额; FROM 送货; ORDER
8、 BY 总金额 DESC * 在命令窗口输入命令:DO my.txt,运行程序,其视图结果如图 3-90 所示。 图 3-90 (2)在“工具”菜单选择“向导”“报表”菜单命令,出现“向导选取”对话框,根据题意数据源是多个表,因此选定“一对多报表向导”。单击“确定”。 步骤一:在弹出的对话框中“数据库和表”选项选择父表“产品信息”,并把全部“可用字段”选为“选定字段”。 步骤二:选择子表“外型信息”,并把全部“可用字段”选为“选定字段”。步骤三:系统自动以“产品编号”建立两表之间的关系。 步骤四:在“排序记录”中选择“产品编号”,并选择升序排序。 步骤五:报表样式选择为“随意式”,方向为“纵向
9、”。 步骤六:把表单标题改为“送货浏览”,可以在单击“完成”之前单击“预览”按钮来预览生成的报表,最后单击“完成”按钮。 将报表以文件名为 myr 保存在考生文件夹中。报表预览结果如图 3-91 所示。 )解析:三、综合应用题(总题数:2,分数:4.00)5.综合应用题()(分数:2.00)_解析:6.对考生文件夹下表“客户”和“定货”完成如下操作: 为表客户增加一个字段,字段名为“应付款”,字段类型为数值型,宽度为 10,小数位数为 2。 编写程序 myp 统计表“定货”中每个客户的费用总和,并将该值写入表“客户”的对应客户的“应付款”字段。 运行该程序。(分数:2.00)_正确答案:(正确
10、答案:在命令窗口中输入命令:MODIFY COMMAND myp,在弹出的程序编辑窗口中输入如下程序段: *程序文件 myp. prg 中的程序段* ALTER TABLE 客户 ADD 应付款 N(10,2) SELECT 客户编号,SUM(金额)AS 应付款 FROM 定货; GROUP BY 客户编号 INTO CURSOR atemp DO WHILE NOT EOF () UPDATE 客户 SET 应付款= atemp.应付款; WHERE 客户.客户编号=atemp.客户编号 SKIP ENDDO * 在命令窗口输入命令:DO myp,执行程序,结果如图 3-89 所示。 )解析:解析:本大题主要考查的是 SQL 语句的应用,字段的增加用到数据表的定义语句,在 SQL 语句设计过程中可利用临时表来存放查询结果,再利用 DO 循环语句对表中的记录逐条更新。