1、国家二级 VF机试-试卷 225及答案解析(总分:12.00,做题时间:90 分钟)一、基本操作题(总题数:2,分数:4.00)1.基本操作题()(分数:2.00)_2.(1)将当前文件夹下的自由表 class(班级表)和 teacher(教师表)添加到学生数据库 sdb中。 (2)为班级表 class 创建一个主索引和普通索引(升序),主索引的索引名和索引表达式均为“班级号”;普通索引的索引名和索引表达式均为“班主任号”。为教师表 teacher创建一个主索引,索引名和索引表达式均为“教师号”。 (3)通过“班级号”字段建立班级表 class 和学生表 student表间的永久联系。通过班级
2、表 class的“班主任号”字段与教师表 teacher的“教师号”字段建立班级表 class和教师表 teacher间的永久联系。 (4)为以上建立的两个联系设置参照完整性约束:更新规则为“级联”;删除规则为“限制”;插入规则为“限制”。(分数:2.00)_二、简单应用题(总题数:2,分数:4.00)3.简单应用题()(分数:2.00)_4.(1)使用向导建立一对多报表 report_c,选择父表 employee中仓库号、职工号、姓名字段以及子表orders中除职工号以外的全部字段,报表按仓库号升序排序,报表样式选择简报式,报表标题是“职工订单汇总”。 (2)使用 SQL命令建立视图 vi
3、ew_cd曲,视图中显示每个职工签订的所有订单总金额(签订订单金额合计)大于 15000元的职工号、姓名及其所签订订单的总金额,结果按总金额升序排序;同时把所用命令保存在文本文件 cmd cbtxt 中。(分数:2.00)_三、综合应用题(总题数:2,分数:4.00)5.综合应用题()(分数:2.00)_6.设计一个文件名和表单名均为 rate的表单,表单的标题为“外汇汇率查询”,表单界面如图 1-19所示,表单中有两个下拉列表框(Combo1 和 Combo2),这两个下拉列表框的数据源类型(RowSourceType 属性)均为字段,且数据源(RowSource 属性)分别是外汇汇率表的“
4、币种 1”和“币种 2”字段(不要给出表名前缀);另外有币种 1(Label1)和币种 2(Label2)两个标签以及两个命令按钮“查询”(Command1)和“退出”(Command2)。运行表单时,首先从两个下拉列表框选择币种,然后单击“查询”按钮用 SQL语句从外汇汇率表中查询相应币种(匹配币种 1和币种 2)的信息,并将结果存储到表 temp_rate 单击“退出”按钮关闭表单。 要求:在“币种 1”中选择“澳元”,在“币种 2”中选择“美元”,单击查询按钮生成temp_rate表。 (分数:2.00)_国家二级 VF机试-试卷 225答案解析(总分:12.00,做题时间:90 分钟)
5、一、基本操作题(总题数:2,分数:4.00)1.基本操作题()(分数:2.00)_解析:2.(1)将当前文件夹下的自由表 class(班级表)和 teacher(教师表)添加到学生数据库 sdb中。 (2)为班级表 class 创建一个主索引和普通索引(升序),主索引的索引名和索引表达式均为“班级号”;普通索引的索引名和索引表达式均为“班主任号”。为教师表 teacher创建一个主索引,索引名和索引表达式均为“教师号”。 (3)通过“班级号”字段建立班级表 class 和学生表 student表间的永久联系。通过班级表 class的“班主任号”字段与教师表 teacher的“教师号”字段建立班
6、级表 class和教师表 teacher间的永久联系。 (4)为以上建立的两个联系设置参照完整性约束:更新规则为“级联”;删除规则为“限制”;插入规则为“限制”。(分数:2.00)_正确答案:(正确答案:(1)在命令窗口执行命令: MODIFY DATABASE sdb ,打开数据库设计器。 在数据库设计器中右击鼠标,选择【添加表】快捷菜单命令,在弹出的“打开”对话框中双击“class”表,将表添加到数据库中,以同样的方法将“teacher”表添加到数据库中。 (2)右击数据库设计器中的“class”表,选择【修改】快捷菜单命令,打开“class”表设计器,在“字段”选项卡中选中“班级号”,在
7、“索引”列中选择“升序”,以同样的方法再为“班主任号”建立“升序”排序;然后在“索引”选项卡中选中“班级号”,并修改其“类型”为“主索引”,单击“确定”按钮保存表结构修改。 参照上面的操作,为“teacher”表建立“教师号”字段的主索引。 (3)在数据库设计器中拖动“class”表“索引”下方的主索引“班级号”到“smdent”表中“索引”下方的普通索引“班级号”上,为两个表建立联系。 以同样的方法,拖动“teacher”表“索引”下方的主索引“教师号”到“class”表中“索引”下方的普通索引“班主任号”上,为两个表建立联系,这样便建立了“student”、“class”和“teacher
8、”3个表之间的联系。如图 2-65所示。 )解析:解析:本大题考查了数据表的基本操作;表索引的建立及参照完整性的设置。 向数据库中添加表的操作可以在数据库设计器中进行,而为表建立索引则需要在表设计器中进行。 参照完整性是针对两个表进行设置的,因此建立参照完整性前要先建立两个表的关联,且有一个表中必须建立关联字段的主索引(或候选索引),另一个表要建立普通索引,如果表中设置多个索引字段时,鼠标指针一定要拖动到进行联系的字段上,否则进行联接的两个字段会不对应。二、简单应用题(总题数:2,分数:4.00)3.简单应用题()(分数:2.00)_解析:4.(1)使用向导建立一对多报表 report_c,选
9、择父表 employee中仓库号、职工号、姓名字段以及子表orders中除职工号以外的全部字段,报表按仓库号升序排序,报表样式选择简报式,报表标题是“职工订单汇总”。 (2)使用 SQL命令建立视图 view_cd曲,视图中显示每个职工签订的所有订单总金额(签订订单金额合计)大于 15000元的职工号、姓名及其所签订订单的总金额,结果按总金额升序排序;同时把所用命令保存在文本文件 cmd cbtxt 中。(分数:2.00)_正确答案:(正确答案:(1)步骤 1:在命令窗口执行命令: OPEN DATABASE orders_manaqe ,打开orders_manage数据库。 步骤 2:执行
10、【文件】【新建】菜单命令,或单击“常用”工具栏的“新建”按钮,在弹出的“新建”对话框中选中“报表”选项,然后单击“向导”图标按钮,系统弹出“向导选取”对话框,选中“一对多报表向导”项,单击“确定”按钮,启动报表向导。 步骤 3:在报表向导的“步骤 1-从父表选择字段”界面的“数据库和表”下选中 employee表,依次双击“可用字段”中的“仓库号”、“职工号”和“姓名”字段,将其添加到“选定字段”中,单击“下一步”按钮。 步骤 4:在报表向导的“步骤 2-从子表选择字段”界面的“数据库和表”下选中 orders表,将“可用字段”中除“职工号”以外的字段全部添加到“选定字段”中,单击“下一步”按
11、钮。 步骤 5:在报表向导的“步骤 3-为表建立关系”界面中系统自动建立两个表的联系,单击“下一步”按钮。 步骤 6:在报表向导的“步骤 4-排序记录”界面中双击“可用的字段或索引标识”中的“仓库号”字段到“选定字段”列表中,再选择“升序”,单击“下一步”按钮。 步骤 7:在报表向导的“步骤 5-选择报表样式”界面的“样式”下选中“简报式”,单击“下一步”按钮。 步骤 8:在报表向导的“步骤 6-完成”界面中的“报表标题”下方文本框中输入“职工订单汇总”,单击“完成”按钮。 步骤 9:在“另存为”对话框的“保存报表为:”框中输入表单文件名 report_c,单击“保存”按钮。 (2)步骤 1:
12、在命令窗口执行命令: OPEN DATABASE orders_manage ,打开数据库环境。 步骤 2:在命令窗口执行命令: MODIFY FILE cmd_cb ,打开文本文件编辑器编写视图定义代码。 步骤 3:在编辑器中输入如下程序代码: CREATE VIEW VIEW_CB AS; SELECT Employee职工号,Employee 姓名,SUM(Orders金额) AS 总金额; FROM orders_manage!employee INNER JOIN orders_manage!orders; ON Employee职工号=Orders职工号;GROUP BY Empl
13、oyee职工号, HAVING 总金额15000; ORDER BY 3 步骤 4:在命令窗口执行命令:DO cmd_cbtxt,执行文件(注意:执行文件时,文件后缀名txt 不能缺省)。)解析:解析:(1)本题考查报表向导的使用,根据向导提示一步步完成操作即可。 (2)本题主要考查了利用 SQL命令建立视图。 利用 SQL命令建立视图的基本命令格式为:CREATE VIEW视图名ASSELECT语句。本题视图定义的关键是分组以及分组条件的设置,因为题中要显示每个职工签订的所有订单总金额大于 15000元的职工信息,所以应该按职工号分组,而分组限定条件就是“总金额大于 15000”。 本题中,
14、视图的建立可以通过视图设计器完成。三、综合应用题(总题数:2,分数:4.00)5.综合应用题()(分数:2.00)_解析:6.设计一个文件名和表单名均为 rate的表单,表单的标题为“外汇汇率查询”,表单界面如图 1-19所示,表单中有两个下拉列表框(Combo1 和 Combo2),这两个下拉列表框的数据源类型(RowSourceType 属性)均为字段,且数据源(RowSource 属性)分别是外汇汇率表的“币种 1”和“币种 2”字段(不要给出表名前缀);另外有币种 1(Label1)和币种 2(Label2)两个标签以及两个命令按钮“查询”(Command1)和“退出”(Command
15、2)。运行表单时,首先从两个下拉列表框选择币种,然后单击“查询”按钮用 SQL语句从外汇汇率表中查询相应币种(匹配币种 1和币种 2)的信息,并将结果存储到表 temp_rate 单击“退出”按钮关闭表单。 要求:在“币种 1”中选择“澳元”,在“币种 2”中选择“美元”,单击查询按钮生成temp_rate表。 (分数:2.00)_正确答案:(正确答案:步骤 1:在命令窗口执行命令: OPEN DATABASE 外汇 ,打开“外汇”数据库。 步骤 2:在命令窗口执行命令: CREATE FORM rate ,打开表单设计器新建表单。 步骤 3:右击表单选择【数据环境】快捷菜单命令打开表单数据环
16、境,继续在表单数据环境中单击右键选择【添加】快捷菜单命令,在“添加表或视图”对话框中双击“外汇汇率”表,将其添加到数据环境中。 步骤 4:从“表单工具栏”中依次向表单添加两个标签、两个组合框和两个命令按钮。在“属性”面板的下拉框中选择表单对象,在“全部”选项卡中修改对象属性值,见表 2-22。 )解析:解析:本题主要考查了表单及控件的常用属性的设置;locate 查找语句和 SQL简单查询。 对本题操作时,首先根据题意新建表单,添加控件并修改其相关属性。注意组合框控件用于设置数据源类型和数据源的属性分别是 RowSourceType和 RowSource,将组合框设置为下拉列表框应将 style属性设置为“2-下拉列表框”。在指定数据源为表或表中字段时,应首先把表添加到表单数据环境中;另外,通过组合框的 DisplayValue属性可以指定当前显示在组合框中的数据。 通过 Locate 查询在“代码”表中查找下拉框中外币名称对应的外币代码,并分别保存到两个变量中,然后再通过 SQL查询语句进行查询。