国家二级VF机试模拟试卷1(共27题)_第1页
国家二级VF机试模拟试卷1(共27题)_第2页
国家二级VF机试模拟试卷1(共27题)_第3页
国家二级VF机试模拟试卷1(共27题)_第4页
国家二级VF机试模拟试卷1(共27题)_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

国家二级VF机试模拟试卷1(共9套)(共27题)国家二级VF机试模拟试卷第1套一、基本操作题(本题共1题,每题1.0分,共1分。)1、在考生文件夹下完成如下基本操作:(1)从数据库“稿件管理”中移除表“稿件_bak”(不是删除)。(2)将自由表“投稿”添加到数据库“稿件管理”中。(3)为表“投稿”建立一个主索引,索引名和索引表达式均为“稿件名称”。(4)为表“投稿”的“稿件名称”字段设置有效性规则,“规则”是:稿件名称不能为空。标准答案:(1)①选择【文件】→【打开】命令,在“打开”对话框的“文件类型”下拉列表框中选择“数据库”,选择“稿件管理.dbc”,选择“独占”,单击“确定”按钮,打开数据库设计器。②在数据库设计器中,选择表“稿件_bak”,单击右键,在弹出的快捷菜单中选择“删除”,单击“移去”按钮,选择“是(Y)”将表“稿件_bak”从“稿件管理”数据库中移除。③选择【数据库】→【清理数据库】命令清理数据库。(2)在“数据库设计器”中,单击右键选择“添加表”,在“打开”对话框中选择表“稿件”,单击“确定”按钮将“稿件”添加到数据库“稿件管理”中。(3)在数据库设计器中.选择表“稿件”。选择【数据库】→【修改】命令,打开表设计器修改表“稿件”结构,在“稿件”表设计器中的“索引”选项卡的“索引名”中输入“稿件名称”,选择索引类型为“主索引”,索引表达式为“稿件名称”,单击“确定”按钮关闭表设计器并保存表“稿件”结构。(4)①在数据库设计器中,右键单击数据库表“稿件”,在弹出的快捷菜单中选择“修改”命令,进入“稿件”的数据表设计器界面。②在“稿件”表设计器的“字段”选项卡中,选择“稿件名称”字段,在“字段有效性”的“规则”文本框中输入“.NOT.EMPTY(稿件名称)”,“信息”文本框中输入“"稿件名称不能为空"”,单击“确定”按钮关闭表设计器并保存表“稿件”结构。知识点解析:暂无解析二、简单应用题(本题共1题,每题1.0分,共1分。)2、(1)用SQL语句完成下列操作:检索“读者丙”所借图书的书名、作者和价格,结果按价格降序存入“result”表中,将SQL语句保存在“cx1.prg”中。(2)在考生文件夹下有一个名为“cd1”的下拉式菜单,请设计顶层表单“bd1”,将菜单“cd1”添加到该表单中,使得运行表单时菜单显示在本表单中,并在表单退出时释放菜单。标准答案:(1)①在命令窗口中输入命令:MODICOMMcx1(回车执行),打开程序文件编辑窗口,在程序文件编辑窗口中输入以下程序代码:SELECT书名,作者,价格INTOTABLEresultFROM图书信息WHERE条码号IN(SELECT条码号FROM图书借阅,读者信息WHERE图书借阅.借书证号=读者信息.借书证号AND姓名="读者丙")ORDERBY价格DESC关闭程序文件编辑窗口并保存程序文件。②在命令窗口中输入命令:DOcx1(回车执行),执行程序文件。(2)①选择【文件】→【新建】命令,选择“表单”,单击“新建文件”按钮打开表单设计器,在表单属性窗口中将“ShowWindow”属性值修改为“2”。②在表单属性窗口中双击“InitEvent”,打开Init事件代码编辑窗口,输入以下过程代码:DOcd1.mprWITHThis,"cd1"③在表单属性窗口中双击“DestroyEvent”,打开Destroy事件代码编辑窗口,输入以下过程代码:RELEASEMENUcd1④选择【表单】→【执行表单】命令,系统首先要求保存该表单文件,在弹出的“另存为”对话框中输入表单文件名“bd1”,保存在考生文件夹下,然后运行表单。知识点解析:暂无解析三、综合应用题(本题共1题,每题1.0分,共1分。)3、首先为“order_d”表增加一个新字段:新单价(类型与原来的单价字段相同),然后编写满足如下要求的程序:根据“order_m”表中的“订单口期”字段的值确定“order_d”表的“新单价”字段的值,原则是:订单日期为2007年的“新单价”字段的值为原单价的90%,订单日期为2006年的“新单价”字段的值为原单价的110%(注意:在修改操作过程中不要改变“order_d”表记录的顺序),将“order_d”表中的记录存储到“od_new”表中(表结构与“order_d”表结构完全相同)。最后将程序保存为“result.prg”,并执行该程序。接着再利用VisualFoxPro的“快速报表”功能建立一个简单的报表,该报表内容按顺序含有“order_d”表的全部信息,将报表文件保存为“bb1”。标准答案:①在命令窗口中输入命令:MODICOMMresult(回车执行),打开程序文件编辑窗口,在程序文件编辑窗口中输入以下程序代码:ALTERTABLEorder_dADD新单价N(10,2)UPDATEorderdSET新单价=单价*0.9WHERE订单编号IN(SELECT订单编号FROMorder_mWHEREYEAR(订单日期)=2007)UPDATEorderdSET新单价=单价*1.1WHERE订单编号IN(SELECT订单编号FROMorder_mWHEREYEAR(订单日期)=2006)SELECT*INTOTABLEod_newFROMorder_d关闭程序文件编辑窗口并保存程序文件。②在命令窗口中输入命令:DOresult(回车执行),执行程序文件。③选择【文件】→【新建】命令,选择“报表”,单击“新建文件”按钮,打开报表设计器。④选择【报表】→【快速报表】命令,在“打开”对话框中选择表“order_d”,单击“确定”按钮打开“快速报表”对话框,单击“确定”按钮系统自动建立一个简单的报表,包含表“order_d”的全部字段信息。⑤单击“打印预览”决捷按钮可以预览报表效果,关闭报表设计器并保存报表为“bb1”。知识点解析:暂无解析国家二级VF机试模拟试卷第2套一、基本操作题(本题共1题,每题1.0分,共1分。)1、(1)建立项目文件,文件名为my。(2)将数据库stu添加到新建立的项目当中。(3)从数据库stu中永久性地删除数据库表“学生”,并将其从磁盘上删除。(4)修改表单wen,将其name属性值改为my。标准答案:(1)启动VisualFoxPro后,在命令窗口输入命令:CREATEPROJECTmy,新建一个项目管理器。(2)在项目管理器my中,首先在“数据”选项卡中选择“数据库”,然后单击选项卡右边的“添加”命令按钮,在系统弹出的“打开”对话框中,将考生文件夹中的数据库stu添加到项目管理器中,单击“确定”按钮。(3)在项目管理器中,选中stu数据库,单击右边的“修改”命令按钮,在stu数据库设计器中,右击“学生”数据表文件,选择“删除”快捷菜单命令,系统弹出一个对话框,在对话框中单击“删除”命令按钮,将“学生”表从数据库中永久删除。(4)在命令窗口中输入MODIFYFORMwen,打开表单设计器,在其属性窗口中将表单的Name属性值改为my,单击工具栏中的“保存”按钮,保存表单修改。知识点解析:本大题主要考查的是通过项目管理器来完成一些数据库及数据库表的操作,项目的建立可以直接在命令窗口输入命令来实现,数据库添加可以通过项目管理器中的命令按钮,打开相应的设计器直接管理,数据库表的移去,应在数据库设计器中完成。此外,还考查了表单的属性的更改。二、简单应用题(本题共1题,每题1.0分,共1分。)2、(1)在考生文件夹下有一个数据库stsc,其中有数据库表student、score和course。利用SQL语句查询选修了“C++”课程的学生的全部信息,并将结果按学号升序存放在cplus.dbf文件中(库的结构同student,并在其后加入课程号和课程名字段)。(2)在考生文件夹下有一个数据库stsc,其中有数据库表student,使用报表向导制作一个名为P1的报表,存放在考生文件夹下。要求:选择student表中所有字段,报表样式为经营式;报表布局:列数为1,方向为纵向,字段布局为列;排序字段选择学号(升序);报表标题为“学生基本情况一览表”。标准答案:(1)在命令窗口输入命令:MODIFYCOMMANDquery,在程序编辑窗口中输入如下程序段。****文件query.prg中的程序段****SELECTstudent.*,score.课程号,course.课程名;FROMstsc!studentINNERJOINstsc!score;INNERJOINstsc!course;ONscore.课程号=course.课程号;ONstudent.学号=score.学号;WHEREAT(“C++”,course.课程名)>0;ORDERBYstudent.学号;INTOTABLEcplus.dbf***********************************保存设计结果,在命令窗口输入命令:DOquery,系统将查询结果自动保存到新表中。(2)在“新建”对话框中选择“报表”单选项,再单击“向导”按钮,系统弹出“向导选取”对话框,在列表框中选择“报表向导”,单击“确定”按钮。选择“报表向导”后,进入报表向导设计界面,首先进行字段选取,选择stsc数据库作为报表的数据源。选中数据表student,通过“全部添加”按钮,将“可用字段”列表框中的所有字段添加到“选定字段”列表框中,如图3-40所示。单击“下一步”按钮进入“分组记录”设计界面,跳过此步骤,单击“下一步”命令按钮,进入“选择报表样式”设计界面,在“样式”列表框中选择“经营式”。单击“下一步”命令按钮,进入“定义报表布局”设计界面,设置“列数”为1,“方向”为纵向,“字段布局”为列。单击“下一步”进入“排序记录”设计界面,将“可用字段或索引标识”列表框中的“学号”字段添加到右边的“选定字段”列表框中,并选择“升序”单选项。单击“下一步”,进入最后的“完成”设计界面,在“标题”文本框中输入“学生基本情况一览表”为报表添加标题,单击“完成”命令按钮,在系统弹出的“另存为”对话框中,将报表以p1文件名保存在考生目录下,退出报表设计向导。知识点解析:本大题1小题考查的是利用SQL查询语句进行查询,其中注意每两个表之间的关联及字段的选取即可;2小题利用报表向导完成报表设计,只要注意每个向导界面的设计内容即可。三、综合应用题(本题共1题,每题1.0分,共1分。)3、在考生文件夹下有学生管理数据库stu_7,该库中有chengji表和xuesheng表,结构如下:chengji表(学号C(9)、课程号C(3)、成绩N(7,2)),该表用于记录学生的考试成绩,一个学生可以有多项记录(登记一个学生的多门成绩)。xuesheng表(学号C(9)、姓名C(10)、平均分N(7,2)),该表用于记录学生信息,一个学生只有一个记录(表中有固定的已知数据)。请编写并运行符合下列要求的程序:设计一个名为form_stu的表单,表单中有两个命令按钮,按钮的名称分别为cmdyes和cmdno,标题分别为“统计”和“关闭”。程序运行时,单击“统计”按钮应完成下列操作:根据chengji表计算每个学生的平均分,并将结果存入xuesheng表的“平均分”字段。根据上面的计算结果,生成一个新的自由表pingjun,该表的字段按顺序取自xuesheng表的学号、姓名和平均分3项,并且按平均分升序排序,如果平均分相等,则按学号升序排序。单击“关闭”按钮,程序终止运行。标准答案:在命令窗口输入命令:CREATEFORMform_stu,打开表单设计器;单击表单控件工具栏上的“命令按钮”控件图标,向表单添加两个命令按钮。选中第一个命令按钮(Command1),在属性对话框中将命令按钮的Name属性值修改为cmdyes,将Caption属性值修改为“统计”,如图3-39所示。以同样的方法,将第二个命令按钮(Command2)的Name属性值修改为cmdno,将Caption属性值修改为“关闭”。双击命令按钮cmdyes(统计),在Click事件代码中编写如下程序段:****“统计”命令按钮的Click事件代码****SETTALKOFFOPENDATABASEstu_7USExueshengDOWHILENOTEOF()SELECTAVG(成绩)FROMchengji;WHERE学号=xuesheng.学号INTOARRAYatempREPLACE平均分WITHatemp(1,1)SELECT学号,姓名,平均分FROMxuesheng;ORDERBY平均分,学号;INTOTABLEpingjunCLOSEALLSETTALKONSETSAFETYON*****************************************双击命令按钮cmdno(关闭),在Click事件代码中编写如下程序段:****“关闭”命令按钮的Click事件代码****Thisform.Release*****************************************保存表单,在命令窗口输入命令:DOFORMform_stu。在运行的表单界面中单击“统计”命令按钮,系统将计算统计结果并保存到新表中。知识点解析:本题考查的是表单设计,在设计控件属性中,不要将控件的标题(Caption)和名称(Name)属性弄混淆了,名称属性是该控件的一个内部名称,而标题属性是用来显示的一个标签名称;程序部分可以利用一个DO循环来依次浏览表中的记录,然后利用SQL语句查询符合条件的记录存放到数组中,最后利用数组保存的记录存入到新的数据表中。国家二级VF机试模拟试卷第3套一、基本操作题(本题共1题,每题1.0分,共1分。)1、(1)修改菜单my_menu,my_menu中的“文件”菜单项下有子菜单项“新建”“打开”、“关闭”和“退出”,请在“关闭”和“退出”之间加一条水平的分组线,并为“退出”菜单项设置一条返回到系统菜单的命令(不可以使用过程)。(2)创建一个快速报表sport_report,报表中包含了表“金牌榜”中的“国家代码”和“金牌数”两个字段。(3)使用SQL建立表的语句建立一个与自由表“金牌榜”结构完全一样的自由表golden.dbf。请将该SQL语句存储在文件one.prg中,否则不得分。(4)使用SQL语句向自由表golden.dbf中添加一条记录("011",9,7,11)。请将该SQL语句存储在文件two.prg中,否则不得分。标准答案:(1)①在命令窗口执行命令:MODIFYMENUmy-menu,打开菜单设计器,接着单击菜单设计器中“文件”行的“编辑”按钮进入子菜单界面。②选中“退出”子菜单命令,然后单击菜单设计器右边的“插入”命令按钮,插入一个菜单名称为“新菜单项”菜单行,修改菜单名称为:\-。③修改“退出”菜单命令的“结果”项为“命令”,并输入命令语句:SETSYSMENUTODEFAULT。④执行【菜单】→【生成】菜单命令,在弹出的VisualFoxPro对话框中单击“是”按钮,接着系统会弹出“生成菜单”对话框,单击“生成”按钮生成一个可执行的菜单文件。⑤在命令窗口执行命令:DOmy_menumpr,运行菜单查看结果。(2)①在命令窗口执行命令:USE金牌榜,打开“金牌榜”表。②在命令窗口执行命令:CREATEREPORTsport_report,打开报表设计器,然后执行【报表】→【快速报表】菜单命令,在弹出的“快速报表”对话框中单击“字段”命令按钮,在弹出的“字段选择器”对话框中,将“国家代码”和“金牌数”两个字段添加到“选定字段”列表框中,单击“确定”按钮关闭“字段选择器”对话框。③接着单击“确定”按钮,关闭“快速报表”对话框,新建快速报表,预览并保存报表设计。(3)①在命令窗口执行命令:MODIFYCOMMANDone,打开程序文件编辑器。②在编辑器中输入代码:CREATETABLEgolden(国家代码C(3),金牌数I,铜牌数I)。③在命令窗口执行命令:DOone.prg,执行程序文件。(4)①在命令窗口执行命令:MODIFYCOMMANDtwo,打开程序文件编辑器。②在编辑器中输入代码:INSERTINTOgoldenVALUES("011",9,7,11)。③在命令窗口执行命令:DOtwo.prg,执行程序文件。知识点解析:本题考查了菜单设计器的使用;快速报表的建立;SQL查询语句;SQL数据插入语句。在菜单设计过程中,注意插入的水平线同样是占一行菜单命令,水平线用“\-”符号表示;快速报表的建立需要在报表设计器中进行,在报表设计器中可以通过菜单命令启动建立快速报表的功能,建立快速报表前应先指定报表的数据源;利用SQL的CTREATETABLE命令可以新建数据表;SQL插入语句只需直接套用命令格式即可完成本题表记录的插入。二、简单应用题(本题共1题,每题1.0分,共1分。)2、在考生文件夹下,打开“订货管理”数据库,完成如下简单应用:(1)使用报表向导建立一个简单报表。要求:选择客户表中的所有字段;记录不分组;报表样式为“随意式”;列数为“1”,字段布局为“列”,方向为“纵向”;排序字段为“客户编号”,升序;报表标题为“客户信息一览表”;报表文件名为“bb1。(2)使用命令建立一个名称为“view1”的视图,并将定义视图的命令代码存放到命令文件“view1.prg”中。视图中包括客户的客户编号、客户名称、商品名称、价格、数量和金额(金额=价格*数量),结果按“客户编号”升序排序。标准答案:(1)①选择【文件】→【新建】命令,选择“报表”,单击“向导”按钮打开“向导选取”窗口,选择“报表向导”,单击“确定”按钮进入“报表向导”对话框。②在“报表向导”对话框中,选择“订货管理”数据库下的“客户”数据表,并把全部“可用字段”添加到“选定字段”列表框中。③连续单击“下一步”进入“选择报表样式”的界面,在“样式”列表框中选择“随意式”。④单击“下一步”进入“定义报表布局”,设置“列数”为“1”.在“字段布局”选项组中选择“列”,“方向”为“纵向”。⑤单击“下一步”进入“排序记录”的设计界面,将“可用字段或索引标识”列表框中的“客户编号”字段添加到右边的“选定字段”列表框中,并选择“升序”单选项。⑥单击“下一步”,进入最后的“完成”设计界面,在“报表标题”文本框中输入“客户信息一览表”为报表添加标题,单击“完成”命令按钮,在系统弹出的“另存为”对话框中,将报表以“bb1”文件名保存在考生文件夹下,退出报表设计向导。(2)①在命令窗口中输入命令:MODICOMMview1(回车执行),打开程序文件编辑窗口,在程序文件编辑窗口中输入以下程序代码:OPENDATABASE订货管理.dbcCREATEVIEWview1AsSELECT客户.客户编号,客户名称,商品名称,价格,数量,价格*数量AS金额FROM客户,商品信息,order_m,order_dWHEREorder_m.订单编号=order_d.订单编号ANDorder_d.商品编号=商品信息.商品编号ANDorde_m.客户编号=客户.客户编号ORDERBY客户.客户编号关闭程序文件编辑窗口并保存程序文件。②在命令窗口中输入命令:DOvlewl(回车执行),执行程序文件,创建视图“view1”。知识点解析:暂无解析三、综合应用题(本题共1题,每题1.0分,共1分。)3、利用菜单设计器建立一个菜单“cd1”,要求如下:①主菜单(条形菜单)的菜单项包括“计算”和“关闭”两项,“计算”菜单下有两个菜单项“计算平均成绩(按课程)”和“计算平均成绩(按学号)”。②“计算平均成绩(按课程)”菜单项的功能是计算各门课程的平均成绩,计算结果包含“课程编号”“课程名称”和“平均成绩”3个字段。并将统计结果按课程名升序保存在表“result1”中。③“计算平均成绩(按学号)”菜单项的功能是计算每个学生的平均成绩.计算结果包含“学号”“姓名”和“平均成绩”3个字段,并将统计结果按学号升序保存到表“resuh2”中。④“关闭”菜单项的功能是返回VisualFoxPro系统菜单(SETSYSMENUTODEFAULT)。菜单建立后,运行该菜单中各个菜单项。标准答案:①选择【文件】→【新建】命令,选择“菜单”,单击“新建文件”按钮,再单击“菜单”按钮,打开菜单设计器,存“菜单名称”中输入“计算”,在“结果”下拉列表框中选择“子菜单”,单击“创建”按钮创建“计算”子菜单。②输入子菜单名称“计算平均成绩(按课程)”,在“结果”下拉列表框中选择“过程”.单击“创建”按钮创建“计算平均成绩(按课程)”子菜单过程,在菜单过程代码编辑窗口中输入以下代码:SELECT课程.课程编号,课程名称,AVG(成绩)AS平均成绩INTOTABLEresultlFROM课程,成绩WHERE课程.课程编号=成绩.课程编号GROUPBY课程.课程编号关闭菜单过程代码编辑窗口回到菜单设计器。③单击下一行,输入子菜单名称“计算平均成绩(按学号)”,在“结果”下拉列表框中选择“过程”,单击“创建”按钮创建“计算平均成绩(按学号)”子菜单过程,在菜单过程代码编辑窗口中输入以下代码:SELECl、学生.学号,姓名,AVG(成绩)AS平均成绩INTOTABLEresult2FROM学生,成绩WHERE学生.学号=成绩.学号GROUPBY学生.学号关闭菜单过程代码编辑窗口回到菜单设计器。④在菜单设计器左边的“菜单级”下拉列表框中选择“菜单栏”返回到主菜单设计画而,单击下一行,输入菜单名称“关闭”,在“结果”下拉列表框中选择“命令”,在“选项”处输入“关闭”命令:SETSYSMENUTODEFAULT。⑤选择【菜单】→【生成】命令,将菜单保存为“cd1”,生成一个菜单文件“cd1mpr”。关闭菜单设计窗口,在命令窗口输入命令:DOcd1.mpr,看到VisualFoxPro的菜单栏被新建的菜单所代替,运行该菜单中各个菜单项,最后单击“关闭”菜单命令将恢复系统菜单。知识点解析:暂无解析国家二级VF机试模拟试卷第4套一、基本操作题(本题共1题,每题1.0分,共1分。)1、(1)根据sc数据库,使用查询向导建立一个包含学生“姓名”和“出生日期”的标准查询birthday.qpr。(2)从sc数据库中删除视图stunew。(3)用SQL命令向score表插入一条记录:学号为“08102002”,课程号为“1001”,成绩为91,并将命令保存在考生文件夹one.txt中。(4)打开表单close,向其中添加一个标题为“退出”的命令按钮,名称为command1,单击“退出”按钮则关闭表单。标准答案:(1)①在命令窗口执行命令:OPENDATABASESC,打开数据库环境。②执行【文件】→【新建】菜单命令,在弹出的“新建”对话框中选中“查询”选项,然后单击“向导”图标按钮,系统弹出“向导选取”对话框,选中“查询向导”项,单击“确定”按钮,启动查询向导。③在查询向导的“步骤1-字段选取”界面的“数据库和表”下选中“student”表,双击“可用字段”中的“姓名”和“出生日期”字段,将其添加到“选定字段”中。④由于本题不再要求涉及其他操作,可单击“完成”命令按钮直接跳至向导最后一个界面“步骤5-完成”,继续单击“完成”按钮,在弹出的“另存为”对话框的“文件名”框中输入查询文件名birthday,单击“保存”按钮。(2)①在命令窗口执行命令:MODIFYDATABASEsc,打开数据库设计器。②右击数据库设计器中的stu_new视图文件,选择【删除】快捷菜单命令,在弹出的VisualFoxPro对话框中单击“移去”按钮,将stu_new视图移出数据库。(3)①在命令窗口执行命令:MODIFYFILEone,打开文本文件编辑器。②在编辑器中输入SQL查询代码:INSERTINTOSCOREVALUES("08102002","1001",91)。③在命令窗口执行命令:DOone.txt,执行文本文件。(4)①在命令窗口执行命令:MODIFYFORMclose,打开表单设计器修改表单。②从“表单控件”工具栏中向表单添加一个命令按钮控件。选中命令按钮,在“属性”面板中修改按钮的Caption属性值“退出”。③双击“退出”命令按钮,编写Click事件代码:THISFORM.RELEASE。④单击“常用”工具栏中的“运行”按钮查看结果,将表单文件保存到考生文件夹下。知识点解析:本题考查了查询向导的使用;视图的删除;SQL数据探作语句和表单常用控件的操作。视图删除可以在数据库设计器中进行,也可以直接通过命令删除,SQL插入语句功能属于SQL的数据操作功能,通过INSERT完成。查询向导和表单的操作也都属于比较简单的操作,修改表单及控件属性值一般是在“属性”面板中进行,如果当前没有打开“属性”面板,可以右击表单选择【属性】快捷菜单命令打开。二、简单应用题(本题共1题,每题1.0分,共1分。)2、(1)考生文件夹下的程序文件five.prg的功能是:根据“教师表”计算每个系的教师人数并将相应数据填入“学院表”,程序中有3处错误,请修改并执行程序。只能修改标有错误的语句行,不能修改其他语句。(2)在“课程管理”数据库中使用视图设计器建立视图teacherview,该视图根据“教师表”和“课程表”建立,视图包括“姓名”、“工资”、“课程名”和“学时”4个字段,视图中的记录按“工资”升序排列。标准答案:(1)步骤1:在命令窗口执行命令:MODIFYCOMMANDfive,打开程序文件,文件中的命令代码如下:&&根据"教师表"计算每个系的教师人数并将数据填入”学院表”CLOSEDATAUSE学院表GOTOPDO.NOT.EOF()&&错误xihao=系号SELECTCOUNT(*)FROM教师表WHERE教师表.系号=xihaoINTOA&&错误REPLACE教师人数WITHA[1]NEXT&&错误ENDDO修改程序中的错误行,修改后的程序如下:&&根据"教师表"计算每个系的教师人数并将数据填入"学院表"CLOSEDATAUSE学院表GOTOPDOWHILE.NOT.EOF()&&错误xihao=系号SELECTCOUNT(*)FROM教师表WHERE教师表.系号=xihaoINTOARRAYA&&错误REPLACE教师人数WITHA[1]SKIP&&错误ENDDO步骤2:保存文件修改,在命令窗口执行命令:DOfive,执行程序文件。(2)步骤1:在命令窗口执行命令:MODIFYDATABASE课程管理,打开数据库设计器。步骤2:在数据库设计器中右击鼠标,选择【新建本地视图】快捷菜单命令打开视图设计器,接着在弹出的“新建本地视图”对话框中单击“新建视图”图标按钮,然后在“添加表或视图”对话框中依次双击“教师表”和“课程表”,将表添加到视图设计器中。步骤3:在视图设计器中依次双击“教师表”中“姓名”、“工资”字段和“课程表”中的“课程名”、“学时”字段添加到“选定字段”中。步骤4:在“排序依据”选项卡中双击“选定字段”列表框中的“教师表.工资”字段,将字段添加到“排序条件”列表框中。步骤5:单击“常用”工具栏中的“运行”按钮查看结果,将视图文件以文件名teacher_view保存。知识点解析:(1)本题考查了DOWHILE循环语句;SQL简单的计算查询;VisualFoxPro修改表记录语句,程序的功能大致如下:首先打开“学院表”,将记录指针指向表文件首,然后开始执行DOWHILE循环处理表中记录。DOWHILE语句的循环条件是当记录指针没有到达“学院表”末尾时,执行循环体中的语句。循环体功能:先设置一个变量等于“学院表”当前记录的“系号”字段值;然后通过SQL计算查询“教师表”中“系号”字段值等于该变量值的教师人数,将结果保存到数组中,其中,可以通过COUNT()函数计算得到教师人数;接着利用REPLACE语句修改“学院表”当前记录的“教师人数”字段的值,该值等于SQL计算查询输出到数组的值;最后,将记录指针指向“学院表”的下一条记录,返回到DOWHILE处再继续判断记录指针是否指向文件末尾,直到指针指向表末尾时退出循环,程序结束。根据对程序语句的分析,可以得知:第一处错误是DOWHILE语句的格式错误,缺少WHILE短语。第二处错误是查询输出短语错误,输出到数组中的短语是INTOARRAY。第三处错误是循环递增的短语错误,在数据表中,应使用SKIP短语表示指向下一条记录,NEXT短语一般在FOR循环中用得比较多。(2)本题考查的是视图设计器的使用及报表向导的使用,由于视图只能保存在数据库中,因此要先打开用于保存视图的数据库。本题中视图建立比较简单,注意判断视图中的字段来自哪个表及排序条件的设置即可。三、综合应用题(本题共1题,每题1.0分,共1分。)3、设计名为bookbd的表单(控件名为fom1,文件名为bookbd)。标题为“出版社情况统计”。表单中有一个组合框、一个文本框和两个命令按钮,名称为“统计”和“退出”。运行表单时组合框中有四个条目“北京大学出版社”、“科学经济出版社”、“人民邮电出版社”、“高等教育出版社”可供选择,在组合框中选择出版社名称以后,如果单击“统计”命令按钮,则文本框中显示books表中该出版社图书的总数。单击“退出”按钮则关闭表单。如图1-20所示。标准答案:步骤1:在命令窗口执行命令:CREATEFORMBOOKBD,打开表单设计器新建表单。步骤2:右击表单选择【数据环境】快捷菜单命令,继续在表单数据环境中单击右键选择【添加】快捷菜单命令,在“添加表或视图”对话框中单击“其他”按钮,在弹出的“打开”对话框中双击books表,将表添加到数据环境中。步骤3:从“表单控件”工具栏中依次向表单添加一个组合框、一个文本框和两个命令按钮控件。在“属性”面板的下拉框中选择表单对象。在“全部”选项卡中修改对象属性值,见表2-24。步骤4:双击组合框(Combo1),编写组合框的。lnit事件代码。代码如下:*****组合框(Combo1)的Init事件代码*****THISFORM.COMBO1.ADDITEM("北京大学出版社")THISFORM.COMBO1.ADDITEM("科学经济出版社")THISFORM.COMBO1.ADDITEM("人民邮电出版社")THISFORM.COMBO1.ADDITEM("高等教育出版社")步骤5:双击命令按钮,编写各个命令按钮的Click事件代码。各按钮代码如下:*****“统计”按钮的Click事件代码(以下SQL查询语句部分由查询设计器生成)*****SELECTCOUNT(Books.书名);FROMbooks;WHEREBooks.出版单位=ALLTRIM(THISFORM.COMBO1.DISPLAYVALUE);INTOARRAYARR1THISFORM.TEXT1.VALUE=ARR1*****“退出”按钮的Click事件代码*****THISFORM.RELEASE步骤6:单击“常用”工具栏中的“运行”按钮查看结果,将表单文件保存到考生文件夹下。知识点解析:本大题主要考查了表单及控件的常用属性和方法的设置;SQL简单的计算查询。对本题操作时,首先根据题意新建表单、添加控件并修改相关属性。通过组合框(Combo1)控件的ADDITEM方法可以向组合框中增加条目;另外,通过组合框的DISPLAYVALUE属性可以指定当前显示在组合框中的数据。SQL查询语句采用的是SQL简单的计算查询,注意本题应使用COUNT()计数函数对“书名”字段进行统计,另外要注意的是查询条件的设置,应设置为books表中“出版单位”等于组合框中当前显示的内容;最终将查询结果保存在数组中,然后再通过数组将值赋给文本框进行显示。国家二级VF机试模拟试卷第5套一、基本操作题(本题共1题,每题1.0分,共1分。)1、(1)为数据库my中的表“积分”增加字段“地址”,类型和宽度为“字符型(50)”。(2)为表“积分”的字段“积分”设置完整性约束,要求积分值大于“400(含400)”,否则提示信息“输入的积分值太少”。(3)设置表“积分”的字段“电话”的默认值为“1234567”。(4)为表“积分”插入一条记录(张良,1800,服装公司,北京市中关村),并用SELECT语句查询表积分中的“积分”在“1500以上(含1500)”的记录,将SQL语句存入my.txt中。标准答案:(1)从菜单栏里单击“文件”并选择“打开”,或直接单击工具栏上的“打开”图标,在弹出的对话框中选择要打开的数据库文件mydb。在数据库设计器中,右键单击数据库表.“积分”,在弹出的快捷菜单中选择“修改”菜单命令,进入“积分”的数据表设计器界面,在“字段”选项卡中,单击表设计器右边的“插入”按钮,输入新的字段名“地址”,根据题意,依次输入类型、宽度。(2)在数据库设计器中,右键单击数据库表“积分”,在弹出的快捷菜单中选择“修改”菜单命令,进入“积分”的数据表设计器界面,在“字段”选项卡中,首先选中“积分”字段,然后在规则文本框中输入“积分>=1000”,在信息文本框中输入“"输入的积分值太少"”,单击“确定”按钮保存表设计结果。(3)在数据库设计器中,右键单击“积分”数据表选择“修改”快捷菜单命令,打开表设计器,在“字段”选项卡中选中“地址”字段,然后在“字段有效性”的“默认值”文本框中输入“"北京市中关村"”。(4)在命令窗口输入:MODIFYFILEmytxt,在弹出的文本编辑器中输入命令:INSERTINTO积分VALUES("张良",1800,"服装公司","北京市中关村")SELECT*FROM积分WHERE积分>=1500保存文件。在命令窗口输入:DOmytxt.txt命令可查看运行结果。知识点解析:本大题考查的是有关修改数据库表结构的基本操作,包括添加字段、设置字段的完整性约束。同时需要掌握在已有的表中插入记录的方法,以及使用select语句查询满足条件的记录。二、简单应用题(本题共1题,每题1.0分,共1分。)2、(1)“考试成绩信息”数据库下有一个表“成绩.dbf",使用菜单设计器制作一个名为my的菜单,菜单只有1个“考试统计”子菜单。“考试统计”菜单中有“学生平均成绩”、“课程平均成绩”和“关闭”3个子菜单:“学生平均成绩”子菜单统计每位考生的平均成绩;“课程平均成绩”子菜单统计每门课程的平均成绩;“关闭”子菜单使用SETSYSMENUTODEFAULT来返回系统菜单。(2)有如下命令序列,其功能是根据输入的考试成绩显示相应的成绩等级。SettalkoffClearInput”请输入考试成绩:"tochjDj=iif(chj<60,”不及格”,iif(chj>=90,"优秀’,"通过"))??"成绩等级"+djSettalkon请编写程序,用DOCASE型分支结构实现该命令程序的功能。标准答案:(1)在命令窗口中输入命令:CREATEMENUmy,系统弹出一个“新建”对话框,在对话框中单击“菜单”按钮,进入菜单设计器环境。输入主菜单名称“考试统计”,在“结果”下拉框中选择子菜单,接着单击“考试统计”菜单项同一行中的“创建”按钮进入下级菜单的设计界面,此设计窗口与主窗口大致相同,然后编写每个子菜单项的名称“学生平均成绩”、“课程平均成绩”和“关闭”,在前两个子菜单的“结果”下拉框中选择“过程”选项,“关闭”的“结果”下拉框中选择“命令”选项。如图3-116所示。单击“学生平均成绩”菜单行中的“创建”按钮,进入程序设计的编辑窗口,在命令窗口中输入如下程序段:****子菜单“学生平均成绩”的过程程序*****SELECT学号,AVG(成绩)AS学生平均成绩FROM成绩GROUPBY学号*****************************************单击“课程平均成绩”菜单行中的“创建”按钮,进入程序设计的编辑窗口,在命令窗口中输入如下程序段:****子菜单“课程平均成绩”的过程程序*****SELECT课程号,AVG(成绩)AS课程平均成绩FRO)M成绩GROUPBY课程号*****************************************在“关闭”菜单项的命令文本框中编写程序代码:SETSYSMENUTODEFAULT。选择菜单命令“菜单”—“生成”,生成一个菜单文件my.mpr。运行菜单,结果如图3-117所示。(2)在命令窗口中输入命令:MODIFYCOMMAND成绩等级,在程序文件编辑器窗口输入如下程序段,****文件“成绩等级”中的程序段*****SettalkoffClearInput"请输入考试成绩:"tochjDoCaseCasechj>=90dj=’优秀’Casechi>=60dj=’通过’Casechj>0dj=’不及格’EndCase?"成绩等级:",djSettalkon**********************************保存文件,在命令窗口输入命令:DO成绩等级,运行程序,通过BROWSE命令可查看结果。知识点解析:本大题1小题主要考查的是菜单设计器的“结果”下拉框中各项的使用功能,例如要建立下级菜单,在“结果”下拉框中就必须选择“子菜单”,而要执行某条菜单命令,就应该选择“命令”或“过程”。2小题考查的是程序基本结构中的选择结构中的分支语句,CASE语句中,只执行满足条件的第一个语句,后面的CASE语句不再执行,如果不满足,则继续执行后面CASE语句。三、综合应用题(本题共1题,每题1.0分,共1分。)3、对考生文件夹中的“学生信息”表,“课程信息”表和“选课信息”表新建一个表单myf。在表单上有1页框,页框内有3个选项卡,标题分别为“学生”,“课程”和“选课”。表单运行时对应的3个页面上分别显示“学生信息”表,“课程信息”表和“选课信息”表。表单上还有1选项按钮组,共有3个待选项,标题分别为“学生”,“课程”,“选课”。当单击该选项按钮组选择某一选项时,页框将在对应页面上显示对应表,如单击“课程”选项时,页框将在课程页面上显示课程表。表单上有1个命令按钮,标题为“关闭”,单击此按钮,表单将退出。标准答案:在命令窗口中输入命令:CREATEFORMmyf,打开表单设计器,通过“常用工具栏”向表单添加1个页框控件、1个选项按钮组和1个命令按钮。在常用工具栏中打开表单数据环境,将数据表文件“课程信息”,“选课信息”和“学生信息”添加到数据环境中。选定页框,修改PageCount属性值为3,增加1个页面,右击页框控件,选择“编辑”菜单命令,可以看到页框四周出现蓝色边框,表示处于编辑状态下,选定页面(Page1),修改页面标题Caption属性值为“学生”,添加一个表格控件,设置表格控件Grid1的RecordSourceType属性值为“0-表”(用来指定显示表中的数据),RecordSource属性值为“学生信息”,然后在页框编辑状态下,以同样的方法设置第二个页面,RecordSource属性值为“课程信息”,设置第二个页面,RecordSource属性值为“选课信息”。在属性面板顶端的下拉框中选择Optiongroup1,将其ButtonCount属性值改为3,右击选项按钮组,选择“编辑”快捷菜单命令,在此状态下(编辑状态下,控件四周出现蓝色框线),分别修改3个单选项的Caption属性值为“学生”、“课程”和“选课”,在属性面板顶端的下拉框中选择Command1,将其Caption属性值改为“关闭”。右击选项按钮组,选择“编辑”快捷菜单命令,在此状态下(编辑状态下,控件四周出现蓝色框线),双击“学生”选项,如图3-115所示。编写该控件的Valid事件,程序代码如下。Thisform.Pageframel.ActivePage=1然后在选项按钮级编辑状态下,以同样的方法编写第二个程序如下:Thisform.Pagefiamel.AetivePage=2以同样的方法编写第三个程序如下;Thisform.Pageframel.ActivePage=3最后双击“关闭”按钮,在Click事件中编写程序命令:Thisform.Release,保存并运行表单。知识点解析:本大题考查的是表单设计,在本题中需要注意的地方是选项按钮组控件中改变单选按钮的属性是ButtonCount,页框控件中改变页面的属性是Pagecount,对页框中单个页面进行编辑设计时,应使页框处于“编辑”状态下,才可以对页框中所包含的控件进行编辑,利用表格显示数据表中的内容,主要是通过RecordSourceType和ReeordSource两个属性来实现,需要注意的是在为表格选择数据表时,首先应该将该表添加到表单的数据环境中。国家二级VF机试模拟试卷第6套一、基本操作题(本题共1题,每题1.0分,共1分。)1、(1)打开“学生管理”数据库,并从中永久删除“学生”表。(2)建立一个自由表“教师”,表结构如下:编号字符型(8)姓名字符型(10)性别字符型(2)职称字符型(8)(3)利用查询设计器建立一个查询,该查询包含课程名为“数据库”的“课程”表中的全部信息,生成的查询保存为query。(4)用SQLUPDATE语句将“课程”表中课程名为“数据库”的课程的“任课教师”更改为“T2222”,并将相应的SQL语句存储在文件four.prg中。标准答案:(1)①在命令窗口执行命令:MODIFYDATABASE学生管理,打开数据库设计器。②右击数据库设计器中的“学生”表,选择【删除】快捷菜单命令,在弹出的VisualFoxPro对话框中单击“删除”按钮(如图2-20所示),将“学生”表永久性删除。(2)①在命令窗口执行命令:CLOSEALL,关闭所有文件。②继续在命令窗口执行命令:CREATE教师,打开表设计器新建“教师”表结构。③根据题意,在表设计器中逐行输入每个字段的“字段名”,并设置字段“类型”和“宽度”,然后单击“确定”按钮,此时系统会弹出一个对话框询问“现在输入数据记录吗?”,本题不需要录入数据,单击“否”按钮。(3)①在命令窗口执行命令:OPENDATABASE学生管理,打开数据库环境。②在命令窗口执行命令:CREATEQUERYquery,打开查询设计器,在“添加表或视图”对话框中,双击“课程”表,将表添加到查询设计器中。③在“字段”选项卡中单击“全部添加”按钮,将“可用字段”列表中的字段全部添加到“选定字段”列表中。④在“筛选”选项卡的“字段名”下拉列表中选择“课程.课程名”字段,在“条件”下拉框中选择“=”,在“实例”框中输入“数据库”。⑤最后单击“常用”工具栏中的“运行”按钮查看结果,将查询文件保存到考生文件夹下。(4)①在命令窗口执行命令:MODIFYCOMMANDfour,打开程序文件编辑器。②在编辑器中输入代码;UPDATE课程SET任课教师="T2222"WHERE课程名="数据库"。③在命令窗口执行命令:DOfour.prg,执行程序文件。知识点解析:本题考查了数据库和表的基本操作,包括新建表和删除表的探作;利用查询设计器建立查询;通过SQL语句更新表记录。操作过程中特别要注意的是在删除表时,是将表从数据库中删除还是移出;而新建自由表时,如果当前有打开的数据库。则需要先关闭数据库再建立数据表。建立查询时注意在查询设计器中设置筛选条件,其他操作都比较简单;而利用SQL更新表记录时,直接套用SQLUPDATE的命令格式即可。二、简单应用题(本题共1题,每题1.0分,共1分。)2、在考生文件夹下完成如下简单应用:(1)使用报表向导建立一个简单报表。要求:选择工资表中所有字段;记录不分组;报表样式为“随意式”;列数为“1”,字段布局为“列”,方向为“纵向”;排序字段为“职员编号”(升序);报表标题为“职员工资一览表”;报表文件名为“bb1”。(2)在考生文件夹下有一个名称为“bd1”的表单文件,表单中的两个命令按钮的Click事件下的语句都有错误,其中一个按钮的名称有错误。请按如下要求进行修改。修改完成后保存所做的修改。①将按钮“刘缆职员工资”名称修改为“浏览职员工资”。②单击“浏览职员工资”命令按钮时,使用SELECT命令查询工资表中所有字段信息供用户浏览。③单击“关闭”命令按钮时,关闭表单。注意:每处错误只能在原语句上进行修改,不能增加语句行。标准答案:(1)①选择【文件】→【新建】命令,选择“报表”,单击“向导”按钮打开“向导选取”窗口,选择“报表向导”,单击“确定”按钮进入“报表向导”对话框。②在“报表向导”对话框中,选择“公司”数据库下的“工资”数据表,并把全部“可用字段”添加到“选定字段”列表框中。③连续单击“下一步”进入“选择报表样式”设计界面,在“样式”列表框中选择“随意式”。④单击“下一步”进入“定义报表布局”,设置“列数”为“1”,“方向”为“纵向”。⑤单击“下一步”进入“排序记录”的设计界面,将“可用字段或索引标识”列表框中的“职员编号”字段添加到右边的“选定字段”列表框中,并选择“升序”单选项。⑥单击“下一步”进入最后的“完成”设计界面,在“报表标题”文本框中输入“职员工资一览表”为报表添加标题,单击“完成”命令按钮,在系统弹出的“另存为”对话框中,将报表以“bb1”文件名保存在考生文件夹下,退出报表设计向导。(2)①选择【文件】→【打开】命令,在“打开”对话框的“文件类型”下拉列表框中选择“表单”,选择“bd1.scx”,单击“确定”按钮,打开表单设计器。②在表单设计器中选择按钮“刘缆职员工资”,在按钮属性窗口中修改“Caption”属性值为“浏览职员工资”。③双击按钮“浏览职员工资”,打开Click事件代码编辑窗口,做如下修改:原代码:BROWSE*FROM工资修改后:SELECT*FROM工资④双击按钮“关闭”,打开Click事件代码编辑窗口,做如下修改:原代码:close修改后:ThisForm.Release⑤保存并关闭表单设计器。知识点解析:暂无解析三、综合应用题(本题共1题,每题1.0分,共1分。)3、①根据“成绩管理”数据库中的“学生”、“课程”和“选课”三个表建立一个名为view_grade的视图,该视图包含“学号”、“姓名”、“课程名称”和“成绩”四个字段,并要求先按“学号”升序排序、在“学号”相同的情况下按“课程名称”降序排序。②建立一个表单grade_list(控件名为form1,文件名为grade_list),表单中含有一个表格(名称为grdView_grade)控件,该表格控件的数据源是前面建立的视图view_grade(直接使用拖拽的方法);然后在表格控件下面添加一个命令按钮(名称为Command1),该命令按钮的标题为“退出”,要求单击按钮时关闭表单。注意:完成表单设计后要运行表单的所有功能。标准答案:步骤1:在命令窗口执行如下SQL命令语句建立视图:OPENDATABASE成绩管理CREATEviewview_gradeAS;SELECT学生.学号,学生.姓名,课程.课程名称,选课.成绩;FROM成绩管理!学生INNERJOIN成绩管理!选课;INNERJOIN成绩管理!课程;ON选课.课程号=课程.课程号;ON学生.学号=选课.学号;ORDERBY学生.学号,课程.课程名称DESC(注意:以上SQL语句查询语句部分是通过视图设计器生成,大家也可以直接在视图设计器中建立。)步骤2:在命令窗口执行命令:CREATEFORMgrade_list,打开表单设计器新建表单。向表单中添加一个命令按钮(Command1),并在“属性”面板中修改命令按钮的“Caption”属性值为:退出。步骤3:右击表单选择【数据环境】快捷菜单命令,继续在表单数据环境中单击右键选择【添加】快捷菜单命令,在“添加表或视图”对话框中单击“视图”单选项,再双击view_grade视图文件到表单数据环境中,然后将数据环境中的view_grade视图在拖放到表单上形成表格控件。步骤4:双击“退出”命令按钮,编写按钮的Click事件代码:THISFORM.RELEASE。步骤5:单击“常用”工具栏中的“运行”按钮查看结果,将表单文件保存到考生文件夹下。知识点解析:本大题考查了表单的常用属性、事件和方法:表单数据环境:视图的建立。本大题首先可以通过SQL语句或视图设计器创建一个视图文件,该视图创建过程比较简单,注意输出字段均来自哪个数据表即可,另外,在创建视图前要先打开保存视图的数据库文件。通过拖放表单数据环境中的表到表单中,可快速建立表格及表格与数据表的联系,要注意的是在向每个页面中添加表格数据对象时,一定要注意页面处于“编辑”状态下(每个页面都可单独选定),否则添加的表格对象只是停留在页框上方,该表格实际是包含在表单中而非添加到页框的页面中。控制页框中页面数的属性为PageCount,该属性为页框控件最重要的属性之一。国家二级VF机试模拟试卷第7套一、基本操作题(本题共1题,每题1.0分,共1分。)1、在考生文件夹下,打开“宾馆”数据库,完成如下操作:(1)打开“客户”表,给“性别”字段增加约束:性别只能为“男”或“女”,默认值为:"女",表达式为:性别$"男女"。(2)为“入住”表创建一个主索引,主索引的索引名为fkkey,索引表达式为:客房号+客户号。(3)根据各表的名称、字段名的含义和存储的内容建立表之间的永久联系,并根据要求建立相应的普通索引,索引名与建索引的字段名相同,升序排序。(4)使用SQL的SELECT语句查询“客户”表中性别为“男”的“客户号”、“身份证”、“姓名”和“工作单位”字段及相应的记录值,并将结果存储到名为taba的表(注意,该表不需要排序)。请将该语句存储到名为one.prg的文件中。标准答案:(1)①在命令窗口执行命令:MODIFYDATABASE宾馆,打开“宾馆”数据库设计器。②右击数据库设计器中的“客户”表,选择【修改】快捷菜单命令,打开“客户”表设计器,选中“字段”选项卡中的“性别”字段,在“字段有效性”的“规则”文本框中输入:性别$"男女",在“默认值”文本框中输入:"女",保存表修改。(2)右击数据库设计器中的“入住”表,选择【修改】快捷菜单命令,打开“入住”表设计器,选中“索引”选项卡,在“索引名”下方的文本框中输入“fkkey”,在“索引”选项卡中将“类型”选择“主索引”,在表达式下方的文本框中输入“客房号+客户号”,建立主索引。(3)①选中“入住”表单击“修改”按钮,弹出“入住”表设计器,在表设计器的“字段”选项卡中选中“客户号”字段名,然后在“索引”列的下拉框选择“升序”排序方式(此时为表已建立了普通索引),接着选中“客房号”字段名,然后在“索引”列的下拉框选择“升序”排序方式,单击“确定”按钮保存表结构修改。②参照“入住”表的操作,为“客房”表建立“类型号”字段的普通索引。③接着在数据库设计器中,拖动“客户”表“索引”下方的主索引“客户号”到“入住”表中“索引”下方的普通索引“客户号”上,为两个表建立联系,建立好联系的两个表之间会出现一条连线。④以同样的方法建立其他三个表之间的联系,其中“客房”表与“入住”表之间的联接字段为“客房号”,“客房”表与“房价”表之间的联接字段为“类型号”(注意:拖动过程中是由主索引字段向普通索引字段进行拖动,且一定要拖到相应的普通索引字段上才可以松开鼠标,否则,有可能建立的联接字段就不对应)。(4)①在命令窗口执行命令:MODIFYCOMMANDone,打开程序文件编辑器编写视图定义代码。②在编辑器中输入如下程序代码:SELECT客户号,身份证,姓名,工作单位FROM客户;WHERE性别="男"INTOTABLEtaba③在命令窗口执行命令:DOone,执行文件。知识点解析:本大题考查字段有效性规则的设置;索引的建立;表间联系;SQL简单查询。建立表字段有效性规则和字段索引都需要在表设计器中建立。“默认值”和“规则”的设置均属于字段有效性规则范围,“默认值”为字符型数据;根据多个字段建立索引表达式时,需要在表设计器“索引”选项卡的“表达式”中进行设置,该索引表达式可以直接输入,也可以打开“表达式生成器”建立。对两个表建立联系是在数据库设计器中进行操作的,本题的关键是要找出每两个表之间的相同字段,并分别设置主索引和普通索引,再进行联接,打开数据库设计器可以看到数据库中所包含的数据表及各数据表中的字段。SQL简单查询可直接套用固定的查询语法格式完成该查询,利用INTOTABLE短语可将查询结果输出到指定的数据表中。二、简单应用题(本题共1题,每题1.0分,共1分。)2、(1)将customer1表中的全部记录追加到customer表中,然后用SQLSELECT语句完成查询:列出目前有订购单的客户信息(即有对应的orderlist记录的customer表中的记录),同时要求按“客户号”升序排序,并将结果存储到results表中(表结构与customer表结构相同)。(2)打开并按如下要求修改form1表单文件(最后保存所做的修改):①在“确定”命令按钮的Click事件(过程)下的程序有两处错误,请改正。②设置Text2控件的有关属性,使用户在输入口令时显示“*”(星号)。标准答案:(1)步骤1:在命令窗口执行命令:SELECT*FROMcustomer1INTOARRAYtempINSERTINTOcustomerFORMARRAYtemp将customer1表中的记录全部复制到customer表中。步骤2:在命令窗口执行命令:SELECTDISTINCTCustomer.*;&&DISTINCT短语的功能是消除查询结果中相同的记录FROM订货管理!customerINNERJOIN订货管理!order_list;ONCustomer.客户号=Order_list.客户号;ORDERBYCustomer.客户号;INTOTABLEresults.dbf(2)步骤1:在命令窗口执行命令:MODIFYFORMform1,打开表单设计器修改表单。步骤2:双击表单中的“确定”按钮,看到该按钮的Click事件中代码如下:&&功能:如果用户输入的用户名和口令一致,则在提示信息后关闭该表单&&否则重新输入用户名和口令*****ERROR*****IFTHISFORM.TEXT1.=THISFORM.TEXT2WAIT"欢迎使用……"WINDOWTIMEOUT1*****ERROR*****THISFORM.CLOSEELSEWAIT"用户名或口令不对,请重新输入……"WINDOWTIMEOUT1ENDIF修改后的代码如下:IFTHISFORM.TEXT1.VALUE=THISFORM.TEXT2.VALUE&&原代码语句中缺少指定VALUE属性WAIT"欢迎使用……"WINDOWTIMEOUT1THISFORM.RELEASE&&关闭表单的短语是RELEASE,而不是CLOSEELSEWAIT"用户名或口令不对,请重新输入……"WINDOWTIMEOUT1ENDIF步骤3:选中表单中的文本框(TEXT2)控件,在属性面板中修改PasswordChar属性值为:*。步骤4:单击“常用”工具栏中的“运行”按钮查看结果,将表单文件保存到考生文件夹下。知识点解析:(1)本题考查的是SQL联接查询。其中Customer(客户表)和Order_list(订单表)的联接条件为两个表中“客户号”相等的记录,表示在Customer表中的客户在Orderlist表中有订购记录;由于一个客户可能对应多条订购记录,因此,需要使用DISTINCT短语消除查询结果中重复的记录。另外,排序的短语为ORDERBY,降序的关键字为DESC,默认的排序方式为升序方式(ASC),将查询结果保存到永久性表中应使用INTOTABLE短语。对于SQL语句不太熟悉的考生,本题还可以直接通过查询设计器完成,然后将查询设计器中生成的SQL代码保存到文本文件中。(2)本题主要考查了表单属性及方法。在表单设计中,文本框中所显示的数据值可以通过Value属性获得,本题提供的源程序中,第一处错误便是缺少该属性。例如,“THISFORM.TEXT1”只能表示表单中的一个控件,如果要设计该控件的属性设置,则必须在该语句后面继续表示完整。第二处错误是对表单常用方法的考查。用来释放和关闭表单的方法是Release,而并非close。三、综合应用题(本题共1题,每题1.0分,共1分。)3、在考生文件夹下,对“雇员管理”数据库完成如下综合应用:①建立一个名称为VIEW1的视图,查询每个雇员的部门号、部门名、雇员号、姓名、性别、年龄和EMAIL。②设计一个名称为form2的表单,表单上设计一个页框,页框(PageFrame1)有“部门”(Page1)和“雇员”(Page2)两个选项卡,在表单的右下角有一个“退出”命令按钮,如图1-8所示。要求如下:表单的标题名称为“商品销售数据输入”。单击选项卡“雇员”时,在选项卡“雇员”中使用“表格”方式显示view1视图中的记录(表格名称为grdView1)。单击选项卡“部门”时,在选项卡“部门”中使用“表格”方式显示“部门”表中的记录(表格名称为“grd部门”)。单击“退出”命令按钮时,关闭表单。要求:将视图view1和表“部门”添加到数据环境,并将视图view1和表“部门”从数据环境直接拖拽到相应的选项卡自动生成表格。标准答案:步骤1:在命令窗口执行命令:OPENDATABASE雇员管理,打开“雇员管理”数据库。步骤2:在命令窗口执行命令:CREATEVIEWVIEW1AS;SELECT雇员.部门号,部门.部门名,雇员.雇员号,雇员.姓名,雇员.性别,雇员.年龄,雇员.email;FROM雇员管理!雇员,雇员管理!部门;WHERE雇员.部门号=部门.部门号步骤3:在命令窗口执行命令:CREATEFORMFORM2,打开表单设计器新建表单。从“表单控件”工具栏中向表单添加一个页框和一个命令按钮控件。步骤4:在“属性”面板的下拉框中选择表单对象,在“全部”选项卡中修改对象属性值,见表2-10。步骤5:右击表单选择【数据环境】快捷菜单命令打开表单数据环境,继续在表单数据环境中单击右键选择【添加】快捷菜单命令,在“添加表或视图”对话框中依次双击view1视图和“部门”表,将其添加到数据环境中。步骤6;右击“页框”控件,选择【编辑】快捷菜单命令,让页框处于编辑状态,再将数据环境中的view1视图和“部门”表分别拖到“雇员”和“部门”页面中(注意:在操作过程中,当独立的页面被选中时,页框处于编辑状态,在页框四周会出现蓝色边框;另外,表单设计器窗口应为“还原”状态,而非最大化窗口,否则将遮盖表单数据环境内容,无法将表拖到页面中)。这时,在“雇员”和“部门”页面中会分别自动生成表格grdVicw1和grd部门。步骤7:双击“退出”命令按钮,编写命令按钮的Click事件代码如下:THISFORM.RELEASE。步骤8:单击“常用”工具栏中的“运行”按钮查看结果,将表单文件保存到考生文件夹下。知识点解析:本题的第1小题主要考查了利用SQL命令建立视图。利用SQL命令建立视图的基本命令格式为:CREATEVIEW<视图名>AS<SELECT语句>。建立视图的SQL语句可以通过视图设计器生成。第2小题主要考查了表单及控件的常用属性的设置;表单数据环境。通过拖放表单数据环境中的表到表单中,可快速建立表格及表格与数据表的联系,要注意的是在向每个页面中添加表格数据对象时,注意页面要处于编辑状态下(每个页面都可单独选定,将表从数据环境中拖放到要求的页面中),否则添加的表格对象只是停留在页框上方,该表格实际是包含在表单中而非添加到页框的页面中。国家二级VF机试模拟试卷第8套一、基本操作题(本题共1题,每题1.0分,共1分。)1、(1)将考生文件夹下的自由表“职称”添加到数据库“职员管理”中。(2)将数据库中的表“考勤”移出,使之变为自由表。(3)从数据库中永久性地删除数据库表“奖励”,并将其从磁盘上删除。(4)为数据库中的表“职称”建立候选索引,索引名称和索引表达式均为“职称编号”。标准答案:(1)①选择【文件】→【打开】命令,或直接单击工具栏上的“打开”图标,在弹出的对话框中选择要打开的数据库文件“职员管理.dbc”,选择“独占”,单击“确定”按钮打开数据库设计器。②在“数据库设计器”中,单击右键选择“添加表”,在“打开”对话框中选择表“职称”,单击“确定”按钮将自由表“职称”添加到数据库“职员管理”中。(2)①在数据库设计器中,选择表“考勤”,单击右键,在弹出的快捷菜单中选择“删除”命令,单击“移去”按钮,选择“是(Y)”将表“考勤”从“职员管理”数据库中移除。②选择【数据库】→【清理数据库】命令清理数据库。(3)在数据库设计器中,选择表“奖励”,单击右键,在弹出的快捷菜单中选择“删除”命令,单击“删除”按钮,将表“奖励”从“职员管理”数据库中删除并将其从磁盘上删除。(4)在数据库设计器中,选择表“职称”,选择【数据库】→【修改】命令,打开表设计器修改表“职称”结构,在“职称”表设计器的“索引”选项卡的“索引名”中输入“职称编号”,选择索引类型为“候选索引”,索引表达式为“职称编号”,单击“确定”按钮关闭表设计器并保存表“职称”结构。知识点解析:暂无解析二、简单应用题(本题共1题,每题1.0分,共1分。)2、在考生文件夹下完成如下简单应用:(1)用SQL语句完成下列操作。列出所有与“黑色”颜色零件相关的信息(产品编号、零件名称和数量),并将检索结果按数量降序排序存放于表“result1”中,将SQL语句保存在“cx1.prg”文件中。(2)建立一个名为“cd1”的快捷菜单,菜单中有两个菜单项:“查询”和“修改”。然后在表单“bd1”中的RightClick事件中调用快捷菜单“cd1”。标准答案:(1)①在命令窗口中输入命令:MODICOMMcx1(回车执行),打开程序文件编辑窗口,在程序文件编辑窗口中输入以下程序代码:SELECT产品编号,零件名称,数量INTOTABLEresult1FROM零件,产品清单WHERE零件.零件编号=产品清单.零件编号AND颜色="黑色"ORDERBY数量DESC关闭程序文件编辑窗口并保存程序文件。②在命令窗口中输入命令:DOcx1(回车执行),执行程序文件。(2)①选择【文件】→【新建】命令,选择【菜单】,单击“新建文件”按钮,单击【快捷菜单】,打开菜单设计器,在“菜单名称”中输入“查询”,单击下一行,在“菜单名称”中输入“修改”。②选择【菜单】→【生成】命令,将菜单保存为“cd1”,生成一个菜单文件“cd1.mpr”。关闭菜单设计器。③选择【文件】→【打开】命令,在“打开”对话框的“文件类型”下拉列表框中选择“表单”,选择“bd1.scx”,单击“确定”按钮,打开表单设计器。④在表单属性窗口中双击“RightClickEvent”,打开事件代码编辑窗口,输入代码:DOcd1.mpr。⑤关闭表单设计器并保存表

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论