国家二级VF机试(操作题)模拟试卷464
基本操作题
1.在考生文件夹下,打开招生数据库sdb,完成如下操作:
(1)在ksb表中增加一个名为“备注”的字段、字段数据类型为“字符”、宽度为30。
(2)在考生成绩表kscjb中给成绩字段设置有效性规则和默认值,成绩>=0 AND成绩<=150;默认值为0。
(3)通过“考生号”字段建立ksb表和kscjb表间的永久联系,并为该联系设置参照完整性约束:更新规则为“级联”;删除规则为“限制”;插入规则为“忽略”。
(4)使用报表向导建立一个简单报表。要求选择考生表ksb中所有字段;记录不分组;报表样式为_随意式”;列数为1,字段布局为“列”,方向为“纵向”;排序字段为“考生号”(升序);报表标题为“考生成绩一览表”;报表文件名为one.frx。
(1)①命令窗口执行:MODIFY DATABASE sdb,打开数据库设计器。
②数据库设计器中,右击ksb表选择【修改】,打开ksb表设计器,“字段”选项卡的“字段名”列的最后一个空白文本框中输入字段名“备注”,“类型”中选“字符型”,“宽度”中输入“30”,单击“确定”保存修改。
(2)在数据库设计器中,右击kscjb表,选择【修改】快捷菜单命令,打开kscjb表设计器,在“字段”选项卡中选中“成绩”,在“字段有效性”的“规则”文本框中输入:成绩>=0 and成绩<2150,在“默认值”文本框中输入:0。
(3)①在数据库设计器中,拖动kbs表“索引”下方的主索引“考生号”到kscjb表中“索引”下方的普通索引“考生号”上,为两个表建立联系。
②选中ksb和kscjb两个表之间的关联线(被选中的线会变粗),先执行【数据库】→【清理数据库】菜单命令,清空数据库表中带有删除标记的记录,然后执行【数据库】→【编辑参照完整性】菜单命令。在打开的“参照完整性”对话框的表格中:选择“更新”为“级联”;“删除”为“限制”;“插入”为“忽略”。单击“确定”保存修改。
(4)①命令窗口执行:
OPEN DATABASE sdb,打开sdb数据库。
②执行【文件】→【新建】菜单命令,或单击“常用”工具栏的“新建”按钮,在“新建”中选“报表”,单击“向导”图标按钮,“向导选取”中选“报表向导”项,单击“确定”按钮,启动报表向导。
③“步骤1.字段选取”的“数据库和表”下选“ksb”表,将“可用字段”全部添加到“选定字段”中,单击“下一步”按钮。
④“步骤2.分组记录”中,单击“下一步”。
⑤“步骤3.选择报表样式”的“样式”下选择“随意式”,单击“下一步”
⑥“步骤4.定义报表布局”的“列数”下输入“1”,在“字段布局”下选择“列”,在“方向”下选择“纵向”,单击“下一步”。
⑦“步骤5.排序记录”中双击“可用的字段或索引标识”中的“考生号”字段到“选定字段”列表中,再选择“升序”,单击“下一步”。
⑧“步骤6.完成”中“报表标题”下输入“考生成绩一览表”,单击“完成”按钮。
⑨在“另存为”对话框的“保存报表为:”框中输入报表文件名one,单击“保存”按钮。
参照完整性、创建简单报表。
解析:本题考查了表结构的修改:有效性规则的建立及参照完整性的设置:报表向导的使用。
在表设计器中对表中字段建立有效性规则和设置默认值是操作,要注意先选中需要建立有效性规则的字段。
建参照完整性前要先建立两个表的关联,且一个表中必须建立关联字段的主索引(或候选索引),另一个表要建立普通索引,建立联系后要先清理数据库,再设置参照完整性。
简单应用题
2.在考生文件夹下,打开招生数据库sdb,完成如下简单应用:
(1)使用一对多表单向导选择ksb表和kscjb表生成一个名为two的表单。要求从父表ksb中选择所有字段,从子表kscjb中选择所有字段,使用“考生号”建立两表之间的关系,样式为阴影式;按钮类型为图片按钮;排序字段为考生号(来自ksb),升序;表单标题为“考生数据输入维护”。
(2)在考生文件夹下打开命令文件three.prg,该命令文件用来查询所有成绩都高于或等于平均分的学生的考生号和姓名。并将查询结果存储到表three中。注意,该命令文件在第3行、第6行、第9行有错误,打开该命令文件,直接在错误处修改,不可改变SQL语句的结构和短语的顺序,不允许增加、删除或合并行。
(1)步骤1:命令窗口执行:
OPEN DATABASE sdb,打开SDB数据库。
步骤2:执行【文件】→【新建】菜单命令,或单击“常用”工具栏的“新建”按钮,在“新建”对话框中选“表单”选项,单击“向导”按钮,“向导选取”对话框中选“一对多表单向导”项,单击“确定”,启动向导。
步骤3:“步骤1.从父表选择字段”的“数据库和表”下选“kbs”表,将“可用字段”全部添加到“选定字段”中,单击“下一步”。
步骤4:“步骤2.从子表选择字段”的“数据库和表”下选“kscjb\\
解析:(1)本题主要考查的是表单向导的使用。
(2)本题主要考查的是SQL简单查询和嵌套查询。本题先用一个SQL简单查询获得平均分,由于平均分是一个数字,并且以后还要将考生成绩与该平均分进行比较,所以应将其存放在一个数组中,而不是存放在临时表中,所以应将第一处错误INTO CURSOR temp改为INTO ARRAY temp。
题中第二个SQL语句为嵌套查询,使用了exists谓词,用来检查子查询中是否有结果返回。根据本题要求,要查找所有成绩都高于或等于平均分的学生的考生号和姓名,换句话说,也就是只要考生有一门成绩小于平均分,该考生就不符合条件。查询的基本过程是:对于外查询中的ksb表中的每个考生号,在内查询中的kscjb表中判断是否该考生编号有一门成绩小于平均成绩,只要有一门成绩小于平均成绩,该考生号都不该被查找出来,故第二处错误是在外查询中的条件中应使用not exists,而不是exists。在内查询中,条件“成绩< temp (1)”和“考生号=ksb.考生号”应该用AND联接。
综合应用题
3.在考生文件夹下,打开招生数据库sdb,完成如下综合应用:
①创建文件名为form的表单,将表单标题改为:录取研究生。
②在表单中设计“录取”和“退出”两个按钮。两个按钮功能分别如下:
在“录取”按钮(Commandl)中,编写程序,查询总成绩大于或等于330分的考生的“考生号”、“姓名”、“性别”、“单位”和该生的“政治成绩”、“外语成绩”、“高数成绩”(即高等数学成绩)、“专业课成绩”、“总成绩”,并将结果按“总成绩”降序排序存储到表four中。表four(需要自己创建或生成)的字段名为:“考生号”、“姓名”、“性别”、“单位”、“政治成绩”、“外语成绩”、“高数成绩”、“专业课成绩”、“总成绩”(各成绩字段的类型为N(5,1),其他字段的类型与原表中一致)。
单击“退出”按钮( Command2)时,关闭表单。
③表单设计完成后,运行表单,单击“录取”按钮进行统计,然后单击“退出”按钮关闭表单。
注:在考试科目代码表dm中存储了各考试科目与考试科目名对应关系。
步骤1:在命令窗口执行命令:CREATE FORM form,打开表单设计器新建表单。向表单添加两个命令按钮。
步骤2:选择表单对象,修改属性值,见表4—44。
[*]
步骤3:双击命令按钮,编写各个命令按钮的Click事件代码如下:
*****“录取”按钮的Click事件代码*****
OPEN DATABASE SDB
SELECT KSB.考生号,姓名,性别,单位,SUM(成绩)总
本文档预览:3600字符,共5235字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载