版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
国家二级VF机试(操作题)模拟试卷4(共9套)(共27题)国家二级VF机试(操作题)模拟试卷第1套一、基本操作题(本题共1题,每题1.0分,共1分。)1、上文件夹下有一表单文件fomaone.scx,其中包含一个文本框和一个命令技钮。打开该表单文件,然后在表单设计器环境下完成如下操作:(1)将文本框和命令按钮两个控件设置为顶边对齐。(2)将文本框的默认值设置为0。(3)将表单的标题设置“基本操作”,将命令按钮的标题设置为“确定”。(4)设置文本框的InteractiveChange事件代码,使得当文本框输入负数时,命令按钮为无效,即不能响应用户的操作。标准答案:【操作步骤】(1)(1)在命令窗口执行命令:MODIFYFORMformone,打开表单设计器修改表单。②右击工具栏的空白区域,选择【布局】快捷菜单命令.打开表单的“布局”工具栏,然后选中表单中的文本框和命令按钮,再单击“布局”工具栏中的“顶边对齐”按钮(第3个图标按钮)。(2)选中文本框,然后在“属性”面板中修改文本框的Value属性值为:0。(3)①单击表单空白处选中表单,然后在“属性”面板中修改表单的Caption属性值为:基本操作。②单击命令按钮,然后在“属性”面板中修改表单的Caption属性值为:确定。(4)双击文本框打开事件编辑器,在“过程”下拉框中选择InteractiveChange事件,输入如下事件代码:IFTHIS.VALUE<0THISFORM.COMMANDl.ENABLED=.F.ENDIF知识点解析:暂无解析二、简单应用题(本题共1题,每题1.0分,共1分。)2、在考生文件夹下,打开商品销售数据库cdb,完成如下简单应用:(1)使用一对多报表向导建立名称为porder的报表。要求从父表顾客表cust中选择所有字段,从子表订单表order中选择所有字段;两表之间采用“顺客号”字段连接:按“顾客号”字段升序排序:报表样式为“经营式”,方向为“纵向“;报表标题为“顾客订单表”。然后修改该报表,在页注脚中增加一个标签“制表人:新思路”:该标签水平居中,标签中的“:”为中文的冒号。(2)修改一个名称为TWO.PRG的命令文件。该命令文件统计每个顾客购买商品的金额合计(应付款),结果存储在临时表Is中。然后用Is中的每个顾客的数据去修改表scust对应的记录。该命令文件有3行语句有错误,打开该命令文件进行修改。注意:直接在错误处修改,不可改变SQL语句的结构和短语的顺序,不允许增加、删除或合并行。修改完成后,运行该命令文件。标准答案:(1)在报表设计器中添加文字,可以通过“报表控件”工具栏中的“标签”控件进行添加。【操作步骤】步骤1:在命令窗口执行命令:OPEN13ATABASEcdb,扣开edb数据库。步骤2:执行【文件】→【新建】菜单命令,或单击“常用”工具栏的“新建”按钮,在弹出的“新建”对话框中选中“报表”选项,然后单击“向导”图标按钮.系统弹出“向导选取”对话框,选中“一对多报表向导”项,单击“确定”按钮,启动报表向导。步骤3:存报表向导的“步骤1-从父表选择字段”界面的“数据库和表”下选中cust表,将“可用字段”中的字段令部添加到“选定字段”中,单击“下一步”按钮。步骤4:在报表向导的“步骤2.从子表选掸字段”界面的“数据库和表”下选中order表,将“可用字段”中的字段全部添加到“选定字段”中,单击“下一步”按钮。步骤5:存报表向导的“步骤3-为表建赢关系”界面中系统自动建市两个表的联系,单击“下一步”按钮。步骤6:在报表向导的“步骤4.排序记录”界面中双击“可用的字段或索一1标识”中的“顾客号”字段到“选定字段”列表中,再选择“升序”,单击“下一步”按钮。步骤7:在报表向导的“步骤5-选择报表样式”界面的“样式”下选中“经营式”,方向为“纵向”,单击“下一步”按钮。步骤8:在报表向导的“步骤6.完成”界面中的“报表标题”下方文本框中输入“顾客订单表”,单击“完成”按钮。步骤9:在“另存为”对话框的“保存报表为:”框中输入表单文件名porder,单击“保存”按钮。步骤10:在命令窗口输入命令:MODIFYKEPORTporder,打开报表设计器修改报表。向报表设计器最底端的“页注脚”带区添加一个标签控件,并输入“制表人:新思路”,然后选中标签,在“布局”工具栏中单击“水平居中”命令按钮(工具栏中的倒数第4个按钮),设置标签为水平居中。【操作步骤】步骤1:在命令窗口执行命令:MODIFYCOMMANDtwo,打开程序文件,文件中的命令代码如下:CLUSEDBFPRIVATEno,moneyUSEscust*下面的一行语句有错误SELECT顾客号,数量+单价应付款;FROMorderJoINcommONorder.商品号=comm.商品号;GROUFBY顾客号;INTOCURSORlsSELECTsellst*下面的一行语句有错误DOWHILEEOFOno=顾客号SELECT1sLOCATFOR顾客号=nomoney=应付款SELECTscust*下面的一行语句有错误REPLACEALL应付款=moneySKIP+1ENDDOCLOSETABLERETURN修改程序中的错误行,修改后的程序如下:CLOSEDBFPRIVATEno,moneyUSEscust*下面的一行语句有错误SELECT顾客号,sum(数量+单价)应付款;FROMorderJOINcomrnONorder.商品号=comm.商品号;GROUPBY顾客号;INTOCURSORisSELECTscuStt下面的一行语句有错误DOWHILE!EOF()DO=顾客号SELECTlsLOCATFOR顾客号=nomoney=应付款SELECTscust*下面的一行语句有错误REPLACE应付款withmoneySKIP+1ENDDOCLOSETABLERETURN步骤2:保存文件修改.在命令窗口执行命令:DOtwo,执行程序文件。知识点解析:暂无解析三、综合应用题(本题共1题,每题1.0分,共1分。)3、考生文件夹下存在数据库“学籍”,其中包含course和score表,这两个表存在一对多的联系。对“学籍”数据库建立文件名为form2的表单,表单标题为“课程成绩查看”,其中包含两个表格控件。第一个表格控件用于显示“课程”表的记录,第二个表格控件用于显示与“课程”表当前记录对应的“成绩”表中的记录。表单中还包含一个标题为“退出”的命令按钮,要求单击此按钮退出表单,如图3.1所示。标准答案:表单及控件基本属性的设计,如果要将表格控件与数据表内容结合,首先要将数据表添加到表单的数据环境中,然后利用表格生成器建立表格与数据表的联系,如果在数据库中的两个表已存在永久性联接,那么被添加到表单数据环境中的表也会存在这种联系。【操作步骤】步骤l:在命令窗口执行命令:cREATEFORMform2,打开表单设计器新建表单。从“表单控件”工具栏中依次向表单添加两个表格控件和一个命令按钮控件。步骤2:在“属性”面板的下拉框中选择表单对象,在“全部”选项卡中修改对象属性值,如图4.6所示;表单及控什属性设置,见表4.4。步骤3:右击表单选择【数据环境】快捷菜单命令,继续在表单数据环境中单击右键选择【添加】快捷菜单命令,在“添加表或视图”对话框中双击course和score表,将表添加到表单的数据环境中。步骤4:右击第一个表格(Gridl)选择【生成器】快捷菜单命令,在“表格项”选项卡中,单击“数据库和表”F方的按钮打开,在弹出的“打开”对话框中选择course表,将“可用字段”中的字段全部添加到“选定字段”中,单击“确定”按钮;以同样的方法为第一个表格(Grid2)设置score表中的字段。如图4.7所示。步骤5:双击“退出”命令按钮(cornmand1),存click事件中编写程序代码:THISFORM.RELEASE。步骤6:甲击“常用”工具栏中的“运行”按钮查看结果,将表单文件保存到考生文件夹下。知识点解析:暂无解析国家二级VF机试(操作题)模拟试卷第2套一、基本操作题(本题共1题,每题1.0分,共1分。)1、(1)建立数据库bookauth.dbc,把表books.dbf和authors.dbf添加到该数据库。(2)为authors表建立主索引,索引名“pk”,索引表达式“作者编号”。(3)为books表分别建立两个普通索引,一个索引名为“rk”,索引表达式为“图书编号”;另一个索引名和索引表达式均为“作者编号”。(4)建立authors表和books表之间的永久联系。标准答案:【操作步骤】(1)①命令窝口执行:MODIFYDATABASEBOOKAUTH,打开数据库设计器。②在数据库设计器中右击,选择【添加表】,在“打开”对话框中双击“BOOKS”表添加到数据库中,同样的方法将“AUTHORS”表添加到数据库中。(2)右击数据库设计器中的“AUTHORS”表,选择【修改】,打开表设计器,“字段”选项}中选“作者编号”,“索引”列中选“升序”,索引选项卡中“索引名”设置为“PK”,“类型”设置为“主索引”,单击“确定”按钮保存。(3)右击数据库设计器中的“BOOKS”表,选择【修改】,打开表设计器,“字段”选项卡中选“图书编号”字段,“索引”下拉框选择“升序”,“索引”选项卡中将“索引名”没置为“RK”;同样的方法为“作者编号”字段建索引,单击“确定”按钮保存表结构修改。(4)拖动“AUTHORS”表“索引”下方的主索引“PK”到“BOOKS”表中“索引”下方的普通索引“作者编号”上,为两个表建立联系。知识点解析:暂无解析二、简单应用题(本题共1题,每题1.0分,共1分。)2、(1)在数据库“住宿浏览”中使用一对多表单向导生成一个名为zsform的表单。要求从父表“宿舍”中选择所有字段,从予表“学生”表中选择所有字段,使用“宿舍号”字段建立两个表之间的关系,样式为“边框式”:按钮类型为“图片按钮”;排序字段为“宿舍号”(升序);表单标题为“住宿浏览”。(2)编写modiprog程序,要求实现用户可任意输入一个大于0的整数,程序输出该整数的阶乘。如用户输入的是5,一则程序输出为“5的阶乘为:120”。标准答案:本题考查的是一对多表单向导的使用。在启动向导前,可以先打开数据库环境,这样在启动向导添加数据表时,可在向导界面中直接选中所需的数据表,本题是根据两个表进行操作的,在启动向导时候注意选择“一对多表单向导”,其他的操作只需根据向导提示在各界面中完成即可。【操作步骤】步骤1:在命令窗口执行命令:OIPENDATABASE住宿浏览,打开数据库环境。步骤2:执行【文件】→【新建】菜单命令,或单击“常用”工具栏的“新建”按钮,在弹出的“新建”对话框中选中“表单”选项,然后单击“向导”图标按钮,系统弹出“向导选取”对话框,选中“一对多表单向导”项,单击“确定”按钮,启动表单向导。步骤3:在表单向导的“步骤1-从父表中选定字段”界面的“数据库和表”下选中“宿舍”表,将“可用字段”中的所有字段添加到“选定字段”中,单击“下‘步”按钮。步骤4:在表单向导的“步骤2一从了表中选定字段”界面的“数据库和表”下选中“学生”表,将“可用字段”中的所有字段添加到“选定字段”中,单击“下一步”按钮。步骤5:在表单向导的“步骤3-建立表之间的关系”界面系统自动建立两个表的联系,单击“下一步”按钮。步骤6:在表单向导的“步骤4-选择表单样式”界面中选中“样式”列表中的“边框式”,再在“按钮类型”选项中选中“图片按钮”,单击“下一步”按钮。步骤7:在表单向导的“步骤5.排序次序”界面中双击“可用的字段或索引标识”中的“宿舍号”字段到“选定字段”列表中,单击“下步”按钮。步骤8:在表单向导的“步骤6-完成”界面中的“请键入表单标题”下方文本框中输入“住宿浏览”,单击“完成”按钮。步骤9:存“另存为”对话框的“保存表单为:”框中输入表单文件名zsfonn,单击“保存”按钮。【考点链接】表单数据环境;创建和运行表单。(2)【审题分析】本题重要考查的是FOR循环语句设计。根据题意,程序功能代码设计大致如下:首先利用INPuT命令从键盘获得一个整数并赋给变量I(该变量名可任意定义),然后定义个一个初始变量并赋值为1;接着,利用FOR循环语句开始循环计算,该循环的起始值为1,结束值为从键盘输入的整数值,步长为1,循环体的功能是计算阶乘的表达式:JC=JCc*1,其中,“Jc”为前面定义的初始变量,I为循环增量;循环结束后输出变量N和JC的值。注意:FOR循环中,循环增量的值在每次循环结束后自动加1,不需要通过表迭式指出。【操作步骤】步骤1:在命令窗口执行命令:MODIFYCOMMANDMODIPROG,打开程序文件编辑器。步骤2:在编辑器中输入如下程序代码:INPuT“请输入一个整数:”TONJC=1FORI=1TONJC=JC*IENDFOR?N??“的阶乘为:”??JC步骤3:在命令窗口执行命令:DOMODIPROG.PRG,执行程序文件。【考点链接】程序文件的建立与执行;程序的基本结构。知识点解析:暂无解析三、综合应用题(本题共1题,每题1.0分,共1分。)3、建立“学生”数据库;把自由表student(学生)、course(课程)和score(选课成绩)添加到新建立的数据库:建立满足如下要求的表单formlist(控件名和文件名)①添加一个表格控什Gridl.并按学号升序显示学生选课及考试成绩信息(包括字段学号、姓名、院系、课程名称和成绩)。②添加命令按钮“保存”(Commandl)和“退出”(command2),单击命令按钮“保存”时将表格控件Gridl中所显示的内容保存到表results(方法不限),单击命令按钮“退出”时关闭并释放表单。运行农单如图3一10所示。注意:程序完成后必须运行,并按要求保存表格控件GridI中所显示的内容到表results。标准答案:【操作步骤】步骤1:在命令窗口执行命令:MODIFYDATABASE学生,创建数据库并打开数据库设计器。步骤2:在新建的“学生”数据库设计器中单击有键,选择【添加表】快捷菜单命令,在弹出的“打开”对话框中双击自由表“student”,将表添加到数据库中。以同样的方法,将“score”和“course”表添加到数据库中。步骤3:在命令窗口执行命令:cREATEFORMFORMLIST,打开表单设计器新建表单。从“农单控件”工具栏中依次向表单添加一个表格和两个命令按钮控件。步骤4:在“属性”面板的下拉框中选择表单对象,在“全部”选项卡中修改对象属性值,见表4-14。步骤5:双击表格(Gfidl)控件编写Init事件代码。内容如下:*****表格(Gnd1)的Inn事件代码(以下SQL查询语句是通过查询设计器生成)*****THIS.RECORDSOURCE=”;SELECTstudent.学号,student.姓名,student.院系,course.课程名称,score.成绩;FROM学生!stuadentINNER.JOIN学生!scoze;INNERJOIN学生!course;ONscore.课程编号=course.课程编号;ONstudent.学号=score.学号;ORDERBY1;INTOCURSORCURSOR1”步骤6:双击命令按钮,编写各个命令按钮的Click事件代码。各按钮代码如下:********“保存”按钮的cnck事件代码***********SELECT*FROMCURSOR1INTOTABLERESULTS****“退出”按钮的click事件代码****TEISFORM.RELEASE步骤7:单击“常用”工具栏中的“运行”按钮奄看结果并生成表史件,将表单文件保存到考生文件夹下。知识点解析:暂无解析国家二级VF机试(操作题)模拟试卷第3套一、基本操作题(本题共1题,每题1.0分,共1分。)1、(1)建立菜单querymenu。该菜单只有“查询”和“退出”两个主菜单项(条形菜单),其中单击菜单项“退出”时,返回到VFP系统菜单(相应命令写在命令框中,不要写在过程中)。(2)将COURSE表的“开课系部”字段名改为“开课单位”,其余不变。(3)从数据库score.manager中移去表temp2.dbf(不是删除)。(4)将score1表中记录按学号从低到高排序,在学号相同的情况下再按成绩从高到低排序,排序结果存入表NEWORDER。标准答案:(1)①命令窗口执行:CREATEMENUquery_menu,在“新建菜单”对话框中单击“菜单”图标按钮,打开菜单设计器。②在“菜单名称”列的文本框中依次输入“查询”和“退出”两个主菜单名,在“退出”菜单“结果”下拉框中选择为“命令”,在后面的文本框中输入命令:SETSYSMENUTODEFAULT。(2)①在命令窗口执行命令:MODIFYDATABASESCORE_MANAGER,打开数据库设计器。②右击course表,选择【修改】,打开表设计器,将“字段”选项卡中的“开课系部”字段名修改为“开课单位”,单击“确定”按钮保存。(3)右击temp2表,选择【删除】,弹出提示对话框中单击“移去”,接着弹出的提示对话框中单击“是”,将temp2表从数据库中移去。(4)在命令窗口执行:SELECT*FROMSCORE1ORDERBY学号,成绩DESCINTOTABLENEW_ORDER。知识点解析:本题考查了菜单的建立、表结构的修改、数据库设计器的使用和SQL查询语句。当将数据库表从数据库中移去后,就成为自由表。二、简单应用题(本题共1题,每题1.0分,共1分。)2、(1)打开程序文件cylinder.prg,请按要求修改程序并运行程序。(2)以表employee.dbf和orders.dbf中数据为基础,使用SQL命令检索订单数最多的前3名职工的职工号、姓名和订单数,检索结果按订单数降序排序存入表newcoun.dbf,同时将所用SQL命令存入文件new.txt中。标准答案:(1)步骤1:在命令窗口执行命令:MODIFYCOMMANDcylinder,打开cylinder.prg程序,代码如下:*本程序的功能为输入圆柱体的半径和高,计算圆柱体表面积。*请将程序修改为函数调用方式(注意不得增删语句行)。1SETTALKOFF2CLEAR3LOCALcarea4INPUT"请输入圆柱体的半径"TOr5INPUT"请输入圆柱体的高"TOh6DOcyaWITHr,h,carea7?"圆柱体的表面积为:",carea8RETURN9PROCEDUREcya10PARAMETERSa,b,c11LOCALpai12pai=3.1415913c=2*(pai*a^2)+2*pal*a*b14RETURN15ENDPROC>修改程序中的错误行,修改后的程序如下:1SETTALKOFF2CLEAR3LOCALcarea&&定义局部变量local4INPUT"输入圆柱体的半径:"TOr&&从键盘输入一个半径值5INPUT"输入圆柱体的高:"TOh&&从键盘输入一个高值6carea=cya(r,h)&&调用模块程序,转到PROCEDURE命令行执行程序,按值方式传递参数7?”圆柱体的表面积为:",carea8RETURN9PROCEDUREcya&&过程的开始,并命名过程名为cya10PARAMETERSa,b,c&&声明的行参变量被看作是模块程序中的私有变量11LOCALpai12pai=3.14l5913c=2*(pai*a^2)+2*pai*a*b&&计算圆柱体表面积的表达式14RETURNC&&将计算的表达式值返回上级模块15ENDPROC步骤2:保存文件修改,在命令窗口执行命令:DOYZT.PRG,执行程序文件。(2)步骤1:在命令窗口执行命令:MODIFYFILEnew,打开文本编辑器编写SQL命令。步骤2:在编辑器中输入如下程序代码(以下程序是通过查询设计器生成):1SELECTTOP3Employee.职工号,Employee.姓名,COUNT(*)订单数;2FROMemployeeINNERJOINorders;3ONEmployee.职工号=Orders.职工号;4GROUPBYEmployee.职工号;5ORDERBY3DESC;6INTOTABLEnewcoun.dbf步骤3:在命令窗口执行命令:DONEW.TXT,执行文件(注意:执行文件时,文件后缀名.txt不能缺省)。知识点解析:(1)本题主要考查的是模块的定义和调用。在本题中,当用函数调用方式时,要想在主程序中输出carea的值,应该在子程序的最后返回计算的表面积值c。而在主程序中,应当将调用函数返回的值赋值给carea变量,即“carea=area(r,h)”。这时,实参就变成了两个:r、h,而子程序的形参有三个:a、b、c。这样是可以的。我们说在调用模块时,系统会自动把实参一一传递给对应的形参,形参的数目不能少于实参的数目,因为传递过来的每一个实参都要有对应的形参接收,如果形参的数目比实参少,那多出来的实参就好像找不到地址的信件一样,不知该送去哪里,这时系统就会产生运行时错误。但是,形参的数目可以多于实参的数目,这时,多余的形参变量取初值逻辑假(.F.)。(2)本题要求利用SQL语句进行查询,用到了employ和order两张表,可以使用联接查询。因为要查找订单数最多的前两名职工,应该按职工号分组,并求出每一组中记录的个数,即是每个职工的订单数,要分别使用groupby短语和count()计数函数;另外,因为只查找最多的前两名,应该按降序排序,并使用top短语;将查询结果保存在永久表中,应使用INTOTABLE短语。三、综合应用题(本题共1题,每题1.0分,共1分。)3、在考生文件夹下,先打开学生数据库sdb,然后创建一个文件名为form的表单,完成如下综合应用:在该表单中设计两个命令按钮,各命令按钮的功能如下:①“查询”按钮(Command1):在该按钮的Click事件中使用SQL的SELECT命令查询每个学生所选的所有课程的成绩都是60分以上(包括60分)的学生的学号、姓名、平均成绩和最低分,并将查询结果按学号升序排序存储到表four中。表four的字段为学号、姓名、平均成绩、最低分。②“退出”按钮(Command2):单击“退出”按钮时,关闭表单。表单设计完成后,运行该表单进行查询。标准答案:步骤1:命令窗口执行:CREATEFORMFORM,打开表单设计器新建表单。向表单添加两个命令按钮。步骤2:选择表单对象,修改对象属性值,见表3.19。步骤3:编写各个命令按钮的Click事件代码如下:*****“查询”按钮的Click事件代码*****SELECTstudent.学号,student.姓名,AVG(成绩)AS平均成绩,MIN(成绩)AS最低分;FROMsdb!stladerltINNERJOINsdb!SC;ONstudent.学号=sc.学号;GROUPBYstudent.学号HAVINGMIN(成绩)>=60;ORDERBYstudent.学号;INTOTARLEfour.dbf*****“退出”按钮的Click事件代码****THISFORM.RELEASE步骤4:单击“常用”工具栏中的“运行”按钮查看结果,将表单文件保存到考生文件夹下。知识点解析:本题主要考查的是表单的建立、常用属性的设置和SQL分组与计算查询。SQL分组与计算查询是对student和sc两表进行联接查询,通过AVG和MIN函数计算,根据题意,在进行分组时,需要先将学号相同的记录分到一组,然后同havinq子句对每组中的成绩进行判断是否全部大于等于60分,这样就可以找出满足条件的记录,通过orderby短语对查询结果排序,最后将结果保存到指定的表中。国家二级VF机试(操作题)模拟试卷第4套一、基本操作题(本题共1题,每题1.0分,共1分。)1、在考生文件夹下,有一个学生数据库sdb,打开该数据库,完成如下操作:(1)在学生表student中增加一个名为“照片”的字段,字段数据类型为“通用”。(2)在教师表teacher中建立一个索引名为“教师号”的主索引(升序),索引表达式为教师号。在课程表course中建立一个普通索引(升序),索引名为“教师号”,索引表达式为教师号。(3)建立选课表SC和学生表student之间的永久联系;建立选课表sc与课程表course之间的永久联系;建立教师表teacher和课程表course之间的永久联系。并为以上建立的联系设置参照完整性约束:更新规则为“级联”;删除规则为“限制”;插入规则为“限制”。(4)使用表单向导建立一个名称为sform的表单。要求选择学生表student中所有字段;表单样式为阴影式;按钮类型为图片按钮;选定排序字段为学号(升序);表单标题为“学生表数据输入”。标准答案:(1)①命令窗口执行:MODIFYDATABASEsdb,打开数据库设计器。②数据库设计器中,右击student表,选择【修改】,打开表设计器,“字段”选项卡的“字段名”列的最后一个空白文本框中输入字段名“照片”,“类型”下拉框中选择“通用型”,单击“确定”按钮保存表结构修改。(2)①使用上题中为student表建立索引类似的方法为teacher表建立索引。②数据库设计器中,右击course表,选择【修改】,打开表设计器,“字段”选项卡中选中“教师号”,在“索引”列中选择“升序”,单击“确定”按钮保存表结构修改。(3)①在数据库设计器中,拖动student表“索引”下方的主索引“学号”到sc表中“索引”下方的普通索引“学号”上,为两个表建立联系。②拖动course表“索引”下方的主索引“课程号”到sc表中“索引”下方的普通索引“课程号”上,为两个表建立联系。③拖动teacher表“索引”下方的主索引“教师号”到course表中“索引”下方的普通索引“教师号”上,为两个表建立联系。④选中student和sc两个表之间的关联线(被选中的线会变粗),首先执行【数据库】→【清理数据库】菜单命令,清空数据库表中带有删除标记的记录,然后执行【数据库】→【编辑参照完整性】菜单命令。在“参照完整性”对话框的表格中,将其中的三对关系均做如下操作:选择“更新”下的单元格内容为“级联”;“删除”下的单元格内容为“限制”;“插入”下的单元格内容为“限制”。单击“确定”按钮保存参照完整性的修改。(4)①命令窗口执行:OPENDATABASEsdb,打开sdb数据库。②执行【文件】→【新建】菜单命令,或单击“常用”工具栏的“新建”按钮,在“新建”对话框中选“表单”选项,单击“向导”图标按钮,弹出“向导选取”对话框,选中“表单向导”项,单击“确定”按钮,启动表单向导。③”步骤1.字段选取”的“数据库和表”下选“student”表,将“可用字段”全部添加到“选定字段”,单击“下一步”。④“步骤2.选择表单样式”界面的“样式”下选中“阴影式”,在“按钮类型”下选择“图片按钮”,单击“下一步”。⑤“步骤3.排序次序”中双击“可用的字段或索引标识”中的“学号”字段到“选定字段”列表中,再选择“升序”,单击“下一步”。⑥“步骤4.完成”界面中的“请键入表单标题”下方文本框中输入“学生表数据输入”,单击“完成”按钮。⑦在“另存为”对话框的“保存表单为:”框中输入表单文件名sform,单击“保存”按钮。使用数据库;索引;参照完整性;创建和运行表单。知识点解析:本题考查了表结构的修改:索引的建立及参照完整性的设置:表单向导的使用。在表设计器的“字段”选项卡中选择“排序”中的“升序”或“降序”为指定的字段建立一个索引名与索引表达式相同的普通索引,“索引”选项卡中可对索引名或索引类型进行修改。在建立参照完整性前要先建立两个表的关联,且有一个表中必须建立关联字段的主索引(或候选索引),另一个表要建立普通索引,建立两个表联系后要先清理数据库,然后再设置参照完整性。二、简单应用题(本题共1题,每题1.0分,共1分。)2、在考生文件夹下,打开学生数据库sdb,完成如下简单应用:(1)使用查询设计器设计一个名称为svg的查询,查询每个“女”同学的学号(来自student表)、姓名、课程名、成绩和任课教师(来自teacher表的教师名),查询结果按学号升序排序并输出到表one(查询去向)中。设计完成后,运行该查询。表one中的字段分别为:学号、姓名、课程名、成绩、任课教师。(2)在考生文件夹下,使用快捷菜单设计器设计一个名称为smenu的快捷菜单。要求如下:菜单包括“数据浏览”和“退出”两个菜单项:①“数据浏览”菜单包括“学生表”、“选课表”和“课程表”三个子菜单:学生表子菜单在过程中使用SQL语句“SELECT*FROMstudent”查询学生表的记录。选课表子菜单在过程中使用SQL语句“SELECT*FROMSC”查询学生选课表的记录。课程表选项在过程中使用SQL语句“SELECT*FROMcourse”查询课程表的记录。②“退出”菜单使用命令返回系统默认的菜单。标准答案:(1)步骤1:命令窗口执行:OPENDATABASEsdb,打开数据库环境。步骤2:命令窗口执行:CREATEQUERYsvg,打开查询设计器,在“添加表或视图”对话框中,分别双击student表、sc表、course表和teacher表添加到查询设计器中,在查询设计器中自动建立4个表之间联系。步骤3:在“字段”选项卡的“可用字段”中,依次双击“student.学号”、“student.性名”、“course.课程名”、“sc.成绩”,添加到“选定字段”列表中;在“函数和表达式”下的文本框中输入表达式:teacher.教师名as任课教师,再单击“添加”按钮,将其添加到“选定字段”列表中。步骤4:在“筛选”选项卡内的“字段名”列中选择“student.性别”,“条件”列选择“=”,“实例”列输入“女”。步骤5:在“排序依据”选项卡内双击“选定字段”列表框中的“student.学号”,将其添加到“排序条件”列表框中,在“排序选项”中选择“升序”。步骤6:执行【查询】→【查询去向】菜单命令,在“查询去向”对话框中单击“表”按钮,在“表名”中输入文件名one,单击“确定”按钮。步骤7:最后单击“常用”工具栏中的“运行”按钮查看结果,将查询文件保存到考生文件夹下。查询的建立与使用。(2)步骤1:命令窗口执行:CREATEMENUsmenu,弹出的“新建菜单”中单击“快捷菜单”按钮,打开菜单设计器。步骤2:在“菜单名称”列的文本框中依次输入“数据浏览”和“退出”两个主菜单名,“数据浏览”菜单命令的“结果”下拉框中选择为“子菜单”,单击“创建”按钮进入下级菜单设计,在“菜单名称”列的第1、2、3行文本框中依次输入子菜单名“学生表”、“选课表”和“课程表”,将3个子菜单的“结果”都设置为“过程”,分别单击3个过程后面的“创建”按钮打开过程编辑器,编写过程代码。步骤3:三个过程代码如下:“学生表”菜单命令:SELECT*FROMstudent。“课程表”菜单命令:SELECT*FROMcourse。“选课表”菜单命令:SELECT*FROMsc。步骤4:通过“菜单级”下拉框返回主菜单项设计界面,设置“退出”菜单项的“结果”列为“命令”,并输入命令语句:SETSYSMENUTODEFAULT。步骤5:执行【菜单】→【生成】菜单命令,在弹出的VisualFoxPro对话框中单击“是”按钮,系统会弹出“生成菜单”对话框,单击“生成”按钮生成一个可执行的菜单文件(smenu.mpr)。快捷菜单设计。知识点解析:(1)本题主要考查的是查询设计器的使用。应按照student表、sc表、course表和teacher表的顺序将其添加到查询设计器,再根据题目要求从每个表中选取字段,设置查询条件等完成查询。可在查询设计器“字段”选项卡的“函数和表达式”下的文本框中输入表达式,同时也可以通过打开“表达式生成器”对话框进行输入,可以通过AS短语指定为输入的表达式指定一个新的字段名。(2)本题主要考查了快捷菜单的设计,快捷菜单仅包括一个弹出式菜单,其他设计基本上都与下拉菜单的设计一致。编写“退出”菜单命令时,要熟记返回系统菜单的命令语句:SETSYSMENUTODEFAULT;最后注意生成可执行菜单文件。三、综合应用题(本题共1题,每题1.0分,共1分。)3、在考生文件夹下,先打开学生数据库sdb,然后创建文件名为tform的表单,完成如下综合应用:在该表单中设计两个命令按钮,各命令按钮的功能如下:①“查询”按钮(Commandl):在该按钮的“Click”事件中使用SQL的SELECT命令查询选课数量大于等于4门且平均成绩大于等于75分的每个同学的学号、姓名、平均成绩和选课门数,查询结果按平均成绩降序排序并存储到表two中。表two中的字段名分别为:学号、姓名、平均成绩、选课门数。②“退出”按钮(Command2):单击“退出”按钮时,关闭表单。表单设计完成后,运行该表单,点击“查询”按钮进行查询。标准答案:步骤1:命令窗口执行:CREATEFORMtform,建表单。从“表单工具栏”中依次向表单添加两个命令按钮。步骤2:选择表单对象,修改对象属性值,见表4—34。步骤3:编写各个命令按钮的Click事件代码如下:*****“查询”按钮的Click事件代码*****SELECTStudent.学号,姓名,AVG(成绩)AS平均成绩,COUNT(*)AS选课门数;FROMStudent,Sc;WHEREStudent.学号=Sc.学号;GROUPBYSc.学号;HAVINGCOUNT(*)>=4AND平均成绩>=75;ORDERBY平均成绩DESC;INTODBFTWO*****“退出”按钮的Click事件代码*****THISFORM.RELEASE步骤4:单击“常用”工具栏中的“运行”按钮运行表单,单击“统计”按钮查看结果,将表单文件保存到考生文件夹下。创建和运行表单;基本型控件;SQL分组与计算查询。知识点解析:本题主要考查的是表单的建立、常用属性的设置:SQL简单查询及SQL简单计算查询。“统计”按钮中需要设计一个SQL查询,用于计数的函数为COUNT(),用于求平均值的函数为AVG()。国家二级VF机试(操作题)模拟试卷第5套一、基本操作题(本题共1题,每题1.0分,共1分。)1、(1)打开考生文件夹下的数据库SPORT,首先永久删除该数据库中的temp表,然后将“金牌榜”“获奖牌情况”和“国家”3个自由表加入该数据库中。(2)在表设计器中,为表“金牌榜”建立一个普通索引,索引名和索引表达式均为“金牌数”。(3)使用SQL语句为表“金牌榜”增加一个字段“奖牌总数”(整数型),同时为该字段设置有效性规则:奖牌总数>=0。请将该SQL语句存储在文件one.prg中,否则不得分。(4)使用SQL语句更改表“金牌榜”所有记录的“奖牌总数”字段值,该值应为“金牌数”“银牌数”“铜牌数”3项之和。请将该SQL语句存储在文件two.prg中,否则不得分。标准答案:【操作步骤】(1)①命令窗口执行:MODIFYDATABASEsport,打开数据库设计器。②右击数据库设计器中的temp表,选择【删除】,在弹出的对话框中单击“删除”按钮,将“temp”表永久性删除。③在数据库设计器中右击,选择【添加表】,在“打开”对话框中双击“金牌榜”表加到数据库中,以同样的方法将“获奖牌情况”表和“国家”表添加到数据库中。(2)①在命令窗口输入如下代码,打开表设计器:USE金牌榜MODIRYSTRUCTURE②在表设计器的“字段”选项卡中选中“金牌数”,“索引”列“升序”排序方式,单击“确定”保存表结构修改。(3)①命令窗口执行:MODIFYCOMMANDone,打开程序文件编辑器。②在编辑器中输入如下程序代码:ALTERTABLE金牌榜ADD奖牌总数ICHECK奖牌总数>=0③命令窗口执行:DOone,执行程序文件。(4)①在命令窗口执行命令:MODIFYCOMMANDtwo,打开程序文件编辑器,输入如下程序代码:UPDATE金牌榜SET奖牌总数=金牌数+银牌数+铜牌数②在命令窗口执行命令:DOtwo,执行程序文件。知识点解析:暂无解析二、简单应用题(本题共1题,每题1.0分,共1分。)2、在考生文件夹下完成下列操作:用户文件下以存在client(用户)表、topic(主题)表和reply(回复)表。(1)考生文件夹下已有文件pone.prg,但其中有4处内容缺失,请填充之。不要修改程序的其他内容。程序的功能是:根据reply表统计各主题帖的回复数,并将统计值存入topic表中的已存在的“回复数”字段。最后要运行该程序文件。(2)使用SElLECT语句查询用户名为chengguowe的客户发布的主题的所有回复。查询结果包含编号、用户名、回复时间和主题帖编号四项内容,各记录按主题帖编号升序进行排序,主题帖编号相同再按回复时间升序排序,查询结果存放在表tableone中。最后将该语句保存在命令文件ptwo.prg中。标准答案:(1)【操作步骤】步骤1:打开考生目录下的pone.prg文件。步骤2:(1)处行应改为“indexon主题帖编号tozhuti”。步骤3:(2)处行应改为“setrelationto编号into2”。步骤4:(3)处行应改为“bh=编号”。步骤5:(4)处行应改为“d0while主题帖编号:bh”。步骤6:保存并运行该程序。(2)【操作步骤】步骤1:建立菜单可以使用菜单命令的方式,选择“文件”菜单下的“新建”自命令,弹出“新建”对话框,文件类型选择“程序”。步骤2:单击“新建文件”图标按钮打开程序编辑界面。步骤3:输入SELECT查询命令:selectreply.编号,reply.用户名,reply.回复时间,reply.主题帖编号;fromclient,topic,reply;whereclient.用户名=topic.用户名andtoDic.编号=redly.主题帖编号andclient.用户名=chenc[quowe”0rderbvrepiy.主题帖编号,reply.回复时间;intotabletableone步骤4:单击菜单工具栏的“保存”按钮,弹出“另存为”对话框,输入程序名为:ptwo.prg,保存到考生文件夹。步骤5:执行该程序。知识点解析:暂无解析三、综合应用题(本题共1题,每题1.0分,共1分。)3、在考生文件夹下,先打开学生数据库sdb,然后创建文件名为tform的表单,完成如下综合应用:在该表单中设计两个命令按钮,各命令按钮的功能如下:①“查询”按钮(Commandl):在该按钮的“Click”事件中使用SQL的SELECT命令查询选课数量大于等于4门且平均成绩大于等于75分的每个目学的学号、姓名、平均成绩和选课门数,查询结果按平均成绩降序排序并存储到表two中。表two中的字段名分别为:学号、姓名、平均成绩、选课门数。②“退出”按钮(Command2):单击“退出”按钮时,关闭表单。表单设计完成后,运行该表单,点击“查询”按钮进行查询。标准答案:【操作步骤】步骤1:命令窗口执行:CREATEFORMtform,建表单。从“表单工具栏”中依次向表单添加两个命令按钮。步骤2:选择表单对象,修改对象属性值,见表4.34。步骤3:编写各个命令按钮的Click事件代码如下:*****“查询”按钮的Click事件代码*****SELECTstudent.学号.姓名,AVG(成绩)As平均成绩,COUNT(*)AS选课门数;FROMStudent,Sc;WHEREstudent.学号=sc.学号;GROUPBYsc.学号;HAVINGCOUNT(*)>=4AND平均成绩>=75;ORDERBY平均成绩DESC;INTODBFTWO*****“退出”按钮的Click事件代码*****THISFORM.RELEASE步骤4:单击“常用”工具栏中的“运行”按钮运行表单,单击“统计”按钮查看结果,将表单文件保存到考生文件夹下。知识点解析:暂无解析国家二级VF机试(操作题)模拟试卷第6套一、基本操作题(本题共1题,每题1.0分,共1分。)1、在考生文件夹下完成如下基本操作:1.通过SQLINSERT语句插入元组("p7","PN7",1020)到“零件信息”表(注意不要重复执行插入操作),并将相应的SQL语句存储在文件one.prg中。2.通过SQLDELETE语句从“零件信息”表中删除单价小于600的所有记录,并将相应的SQL语句存储在文件two.prig中。3.通过SQLUPDATE语句将“零件信息”表中零件号为“p4”的零件的单价更改为1090,并将相应的SQL语句存储在文件three.prg中。4.打开菜单文件mymenu.mnx,然后生成可执行的菜单程序mymenu.mpr。标准答案:(1)打开VisualFoxPro,在命令窗口输入“INSERTINTO零件信息VALUES("p7","PN7",1020)”,并按下回车键执行语句。然后创建一个程序文件one.prg,把代码复制过去并保存。(2)在命令窗口输入“DELETEFROM零件信息WHERE单价<600”,并按下回车键执行语句。然后创建一个程序文件two.prg,把代码复制过去并保存。(3)在命令窗口输入“UPDATE零件信息SET单价=1090WHERE零件号="p4"”,并按下回车键执行语句。然后创建一个程序文件three.prg,把代码复制过去并保存。(4)打开菜单mymenu.mnx后,选择系统菜单中的“菜单”,然后选择“生成”。知识点解析:对于第1、2、3小题,需先在命令窗口中完成正确的SQL语句的编写并执行,然后检查SQL语句的执行结果,接下来新建题目要求的程序文件,最后将SQL语句复制到新建的程序文件中。生成可执行的菜单程序需先打开菜单文件,然后执行“菜单”菜单中的“生成”命令。二、简单应用题(本题共1题,每题1.0分,共1分。)2、在考生文件夹,打开商品销售数据库CDB,完成如下简单应用:1.使用一对多报表向导建立名称为P_ORDER的报表。要求从父表顾客表CUST中选择所有字段,从子表订单表ORDER中选择所有字段;两表之间采用“顾客号”字段连接;按“顾客号”字段升序排序;报表样式为“经营式”,方向为“纵向”;报表标题为“顾客订单表”。然后修改该报表,在页注脚中增加一个标签“制表人:王爱学”;该标签水平居中,标签中的“:”为中文的冒号。2.修改一个名称为TWO.PRG的命令文件。该命令文件统计每个顾客购买商品的金额合计(应付款),结果存储在临时表1s中。然后用1s中的每个顾客的数据去修改表scust对应的记录。该命令文件有3行语句有错误,打开该命令文件进行修改。注意:直接在错误处修改,不改变SQL语句的结构和短语的顺序,不允许增加、删除或合并行,修改完成后,运行该命令文件。标准答案:(1)步骤1:单击“打开”按钮,在“打开”对话框中选择考生文件夹下的CDB数据库。步骤2:单击常用工具栏中的“新建”按钮,“文件类型”选择“报表”,利用向导创建报表。步骤3:在“向导选取”对话框中,选择“一对多报表向导”并单击“确定”按钮,并显示“一对多报表向导”对话框。步骤4:在“一对多报表向导”对话框的“步骤1一从父表选择字段”中,在“数据库和表”列表框中,选择表CUST,然后在“可用字段”列表框中显示表CUST的所有字段名,并选定所有字段至“选定字段”列表框中,单击“下一步”按钮。步骤5:在“一对多报表向导”对话框的“步骤2一从子表选择字段”中。在“数据库和表”列表框中,选择表ORDER,然后在“可用字段”列表框中显示表ORDER的所有字段名,并选定所有字段至“选定字段”列表框中,单击“下一步”按钮。步骤6:在“一对多报表向导”对话框的“步骤3一为表建立关系”中,单击“下一步”按钮。步骤7:在“一对多报表向导”对话框的“步骤4一排序记录”中,选择“顾客号”和“升序”单选按钮,再单击“添加”按钮,单击“下一步”按钮。步骤8:在“一对多报表向导”对话框的“步骤5一选择报表样式”中,选择“经营式”,方向选择“纵向”,单击“下一步”按钮。步骤9:在“一对多报表向导”对话框的“步骤6一完成“中,在”报表标题“文本框中输入”顾客订单表“,单击”完成“按钮。步骤10:在“另存为”对话框中,输入保存报表名P_ORDER,再单击“保存”按钮。步骤11:打开该报表,在页脚注中增加一个标签控件,输入:“制表人:王爱学”,选中该标签,再选择”格式”菜单下“对齐”子菜单中的“水平居中”命令。最后保存该报表。(2)步骤1:打开考生文件夹下的TWO.PRG文件。步骤2:修改其中的命令语句错误1:SELECT顾客号,数量*单价应付款;修改为:SELECT顾客号,sum(数量*单价)应付款;错误2:DOWHILEEOF()修改为:DOWHILE.NOT.EOF()错误3:REPLACEALL应付款=money修改为:REPLACE应付款WITHmoney修改完成后运行该程序。知识点解析:根据题目的要求在报表中逐步操作即可得到报表,修改SQL语句运行查看结果检查是否正确修改。三、综合应用题(本题共1题,每题1.0分,共1分。)3、在考生文件夹下创建一个顶层表单myform.scx,表单的标题为“考试”,然后创建并在表单中添加一个菜单,菜单的名称为mymenu.mnx,菜单程序的名称为mymenu.mpr,如下图所示。“统计”和“退出”菜单命令的访问键分别是“T”和“R”,功能都通过执行“过程”完成。“统计”菜单命令的功能是以客户为单位从customer表和orders表中求出订单金额的和。统计结果有“客户号”、“客户名”和“合计”3项内容,“合计”是指与某客户所签所有订单金额的和。统计结果应按“合计”降序排列,并存放在tabletwo表中。菜单命令“退出”的功能是关闭并释放表单。最后运行表单并依次执行其中的“统计”和“退出”菜单命令。标准答案:步骤1:在命令窗口输“Createformmyform”,新建表单。步骤2:将表单的ShowWindow属性设置为“2一作为顶层表单”,如图3.82所示。然后设置其Caption属性值为“考试”。步骤3:双击表单空白处,编写表单的Init事件代码。DOmymenu.mprWITHTHIS."myform"步骤4:新建菜单,输入菜单项“统计(\步骤5:执行“显示”菜单下的“常规选项”命令,将此菜单设置为“顶层表单”。步骤6:分别在“统计”和“退出”菜单的“结果”列中选择“过程”,并单击其后的“创建”按钮,写入如下SQL语句。*****“统计”菜单中的命令语句*****&&选择查询字段,通过AS短语指定显示字段,sum()函数用于求和SELECTCustomer.客户号,Customer.客户名,sum(orders.金额)AS合计;&&指定字段来源FROMCHStomer,orders;&&设置查询条件WHERECustomer.客户号=Orders.客户号;&&GROUPBY子句用于按客户号分组GROUPBYCustomer.客户号,&&查询结果按合计的降序排列ORDERBY3DESC;&&将查询结果存储到tabletwo.dbf中INTOTABLEtabletwo.dbf********************************************“退出”菜单中的命令语句******Myform.Release**************************************步骤7:保存菜单名为mymenu,生成可执行程序。运行表单,查看结果。知识点解析:建立表单,修改其ShowWindow属性为“2”,使其作为顶层表单。建立菜单,在菜单设计器中完成菜单项的建立,在“常规选项”对话框中将菜单设置为“顶层表单”,在“提示选项”对话框中为菜单项设置快捷键。国家二级VF机试(操作题)模拟试卷第7套一、基本操作题(本题共1题,每题1.0分,共1分。)1、(1)打开表单one,如图3.21所示,通过设置控件的相关属性,使得表单运行时的开始焦点在“打开”命令按钮,并且接下来的焦点的移动顺序是“关闭”和“退出”。(2)打开表单two,使用“布局”工具栏的“顶边对齐”按钮将表单中的3个命令按钮控件的顶边对齐。(3)使用SQL语句创建一个名为“分组情况表”的自由表,“分组情况表”有两个字段:“组号”和“组名”,“组号”占两个字符,“组名”占10个字符。请将该SQL语句存储在three.prg中,否则不得分。(4)使用SQL语句插入一个记录到“分组情况表”中,插入的内容是,组号:01,组名:通俗唱法。请将该SQL语句存储在four.prg中,否则不得分。标准答案:【操作步骤】(1)①命令窗口执行:MODIFYFORMone,打开表单设计器修改表单。②选择表单对象,修改控件对象属性值,见表4-27。③单击“常用”工具栏中的“运行”按钮查看结果,将表单文件保存到考生文件夹下。(2)①命令窗口执行:MODIFYFORMtWO,打开表单设计器修改表单。②右击工具栏的空白区域,选择【布局】快捷菜单命令,打开“布局”工具栏(若表单设计器中未显示该工具栏,则执行该操作)。③同时选中表单中的3个按钮,单击“布局”工具栏中的“顶边对齐”按钮(第3个图标按钮),保存表单修改。(3)①命令窗口执行:MODIFYCOMMANDthree,打开程序文件编辑器。输入如下程序代码:CREATETABLE分组情况袁(组号c(2),组名C(10))②在命令窗口执行命令:DOthree,执行程序文件§(4)①在命令窗口执行命令:MODIFYCOMMANDfour,打开程序文件编辑器,输入如下程序代码:INSERTINTO分组情况表VALUES("01",“通俗唱法”)②在命令窗口执行命令:DOfour,执行程序文件。知识点解析:暂无解析二、简单应用题(本题共1题,每题1.0分,共1分。)2、在考生文件夹下,打开招生数据库sdb,完成如下简单应用:(1)使用一对多表单向导选择ksb表和kscib表生成一个名为two的表单。要求从父表ksb中选择所有字段,从子表ksc}1)中选择所有字段,使用“考生号”建立两表之间的关系,样式为阴影式;按钮类型为图片按钮;排序字段为考生号(来自ksb),升序;表单标题为“考生数据输入维护”。(2)在考生文件夹下打开命令文件three.prg,该命令文件用来查询所有成绩都高于或等于平均分的学生的考生号和姓名。并将查询结果存储到表three中。注意,该命令文件在第3行、第6行、第9行有错误,打开该命令文件,直接在错误处修改,不可改变SQL语句的结构和短语的顺序,不允许增加、删除或合并行。标准答案:(1)【操作步骤】步骤1:命令窗口执行:OPENDATABASEsdb,打开SDB数据库。步骤2:执行【文件】→【新建】菜单命令,或单击“常用”工具栏的“新建”按钮,在“新建”对话框中选“表单”选项,单击“向导”按钮,“向导选取”对话框中选“一对多表单向导”项,单击“确定”,启动向导。步骤3:“步骤1-从父表选择字段”的“数据库和表”下选“kbs”表,将“可用字段”全部添加到“选定字段”中,单击“下一步”。步骤4:“步骤2-从子表选择字段”的“数据库和表”下选“kscib”表,将“可用字段”全部添加到“选定字段”中,单击“下一步”。步骤5:“步骤3-建立表之间的关系”中系统自动建立两个表的联系,单击“下一步”。步骤6:“步骤4-选择表单样式”的“样式”下选“阴影式”,在“按钮类型”下“图片按钮”,单击“下一步”。步骤7:“步骤5-排序次序”中双击“可用的字段或索引标识”中的“考生号”字段到“选定字段”列表中,再选择“升序”,单击“下一步”。步骤8:“步骤6-完成”中的“请键入表单标题”下方输入“考生数据输入维护”,单击“完成”按钮。步骤9:在“另存为”对话框的“保存表单为:”框中输入表单文件名two,单击“保存”按钮。(2)步骤1:命令窗口执行:MODIFYCOMMANDthree,打开three.prg程序,命令中的命令代码如下:*该命令文件用来查询所有成绩都高于或等于平均分的学生的考生号和姓名。并将查询结果存储到表THREE中。*该命令文件在第3行、第6行、第9行有错误,打开该命令文件。*直接在错误处修改,不可改变SQL语句的结构和短语的顺序,不允许增加、删除或合并行。SELECTAVG(成绩);FROMkscjb;INTOCURSORtemSELECT考生号,姓名;FROMksb;WHERE考生号EXISTS;FROMkscjb;WHERE成绩知识点解析:暂无解析三、综合应用题(本题共1题,每题1.0分,共1分。)3、考生文件夹下存在数据库“学籍”,其中包含course和score表,这两个表存在一对多的联系。对“学籍”数据库建立文件名为forrn2的表单,表单标题为“课程成绩查看”,其中包含两个表格控件。第一个表格控件用于显示“课程”表的记录,第二个表格控件用于显示与“课程”表当前记录对应的“成绩”表中的记录。表单中还包含一个标题为“退出”的命令按钮,要求单击此按钮退出表单,如图3.16所示。标准答案:【操作步骤】步骤1:在命令窗口执行命令:CREATEFORMform2,打开表单设计器新建表单。从“表单控件”工具栏中依次向表单添加两个表格控件和一个命令按钮控件。步骤2:在“属性”面板下拉框中选表单对象,在“全部”选项卡中修改对象属性值;表单及控件属性设置,见表4-23。步骤3:右击表单选择【数据环境】快捷菜单命令,继续在表单数据环境中单击右键选择【添加】快捷菜单命令,在“添加表或视图”对话框中双击course和score表,将表添加到表单的数据环境中。步骤4:右击第一个表格(Gridl)选择【生成器】快捷菜单命令,在“表格项”选项卡中,单击“数据库和表”下方的按钮打开,在弹出的“打开”对话框中选择course表,将“可用字段”中的字段全部添加到“选定字段”中,单击“确定”按钮:以同样的方法为第二个表格(Grid2)设置score表中的字段。步骤5:双击“退出”命令按钮(Commandl),在Click事件中编写程序代码:THISFORM.RELEASE。步骤6:单击“常用”工具栏中的“运行”按钮查看结果,将表单文件保存到考生文件夹下。知识点解析:暂无解析国家二级VF机试(操作题)模拟试卷第8套一、基本操作题(本题共1题,每题1.0分,共1分。)1、(1)建立一个“客户”表,表结构如下:客户编号C(8)客户名称C(8)联系地址C(30)联系电话C(11)电子邮件C(20)(2)建立一个“客户”数据库,并将“客户”表添加到该数据库中。(3)将如下记录插入到“客户”表中。(4)利用报表向导牛成一个“客户”(报表文件名)报表,报表的内容包含客户表的全部字段。报表的标题为“客户”,其他各项取默认值。标准答案:(1)①在命令窗口执行命令:CREATE客户,打开表设计器新建表(注意:当前没有打开的数据库)。②根据题意,在表设计器中逐行输入每个字段的字段名,并设置字段类型和宽度(注意:字母C表示为字符型数据),然后单击“确定”按钮,此时系统会弹出一个对话框询问“现在输入数据记录吗?”,单击“是”按钮。(2)接上小题操作,在弹出的输入表记录界面中输入题中所要求的记录,输入完毕后直接记录输入界而。(3)①在命令窗口执行命令:MODIFYDATABASE客户,新建数据库并打开数据库设计器。②在数据库设计器中右击鼠标,选择【添加表】快捷菜单命令,在弹出的“打开”对话框中双击“客户”表,将表添加到数据库中。(4)①执行【文件】→【新建】菜单命令,或单击“常用”工具栏的“新建”按钮,在弹出的“新建”对话框中选中“报表”选项,然后单击“向导”图标按钮,系统弹出“向导选取”对话框,选中“报表向导”项,单击“确定”按钮,启动报表向导。②在报表向导的“步骤1-字段选取”界面的“数据库和表”下选中“客户”表,将“可用字段"中全部字段添加到“选定字段”中,直接单击“完成”按钮进入向导最后一个界面。③在报表向导的“步骤6-完成”界面的“报表标题”框中输入“客户”,单击“完成”按钮,在“另存为”对话框的“保存报表为:”框中输入报表文件名“客户”,单击“保存”按钮。知识点解析:本题考查了表的基本操作;数据库的基本操作;报表向导的使用。建立自由表可以在表设计器中进行,注意建立自由表前要先关闭所有打开的数据库,否则所建立的数据表可能是数据库表;将数据表添加到数据库中可以在数据库设计器中操作;报表向导操作比较简单,启动报表向导后,在各向导提示界面完成相应的操作即可。二、简单应用题(本题共1题,每题1.0分,共1分。)2、(1)建立一个文件名和表单名均为two的表单,然后为表单two建立一个名为quit的新方法(单击选择表单后,从“表单”菜单中选择“新建方法程序”命令),并在该方法中写一条语句Thisform.release;最后向表单中添加一个命令按钮(Command1),并在该命令按钮的Click事件中写一条调用新方法quit的讯句。(2)使用SQL语句计算每个歌手的最高分、最低分和平均分,并将结果存储到result.dbf表中(包含“歌手姓名”、“最高分”、“最低分”和“平均分”4个字段),要求结果按“平均分”降序。注意:按“歌手姓名”分组;每个歌手的最高分、最低分和平均分由评分表中的“分数”字段计算得出。标准答案:(1)步骤1:命令窗口执行:CREATEFORMtwo,打开表单设计器新建表单。步骤2:执行【表单】→【新建方法程序】菜单命令,在“新建方法程序”对话框的“名称”文本框中输入“quit”,单击“添加”按钮新增方法,然后关闭对话框。步骤3:在“属性”窗口中双击quit方法,打开用户自定义过程代码框输入:THISFORM.RELEASE。步骤4:通过“表单控件”工具栏向表单添加一个命令按钮(Command1),双击命令按钮,编写该按钮的Click事件代码:THISFORM.QUIT。步骤5:单击“常用”工具栏中的“运行”按钮查看结果,将表单文件保存到考生文件夹下。(2)在命令窗口执行如下SQL命令语句执行查询:1SELECT。歌手表.歌手姓名,MAX(评分表.分数)AS最高分,;2MIN(评分表.分数)AS最低分,AVG(评分表.分数)AS平均分;3FROM大奖赛!歌手表INNERJOIN大奖赛!评分表;4ON歌手表.歌手编号=评分表.歌手编号;5GROUPBY歌手表.歌手姓名;6ORDERBY4DESC;7TNTOTARLEresult(注意:以上SQL查询语句是通过查询设计器生成,大家也可以直接在查询设计器中完成查询。)知识点解析:(1)本题考查的是表单方法的创建。在VisualFoxPro中,用户首先应打开“新建方法程序”对话框定义新方法名;然后在“属性”面板中定义找到该方法并编写该方法的功能代码;方法建立完毕后,用户可以像调用表单中其他方法一样调用新建的方法。(2)本题主要考查了SQL分组与计算查询。本题在输出字段中除“歌手姓名”字段是表中原有的字段外,最高分、最低分和平均分都需要根据“分数”字段生成,分别使用计算函数MAX()、MIN()和AVG()。由于是求每个歌手的最高分、最低分和平均分,可以根据“歌手姓名”字段进行分组计算。也可以借助查询设计器生成本题的SQL语句。三、综合应用题(本题共1题,每题1.0分,共1分。)3、打开表单文件sapp,并完成如下操作(不得有多余操作):①将“课程”表添加到表单的数据环境中。②使列表框List1中的数据项为“课程”表中的课程名(课程.课程名)。③单击列表框中的数据项时,统计选修了所选课程的学生人数(从“考试成绩”表),并将结果存储在以课程名命名的表中,表中只有一个字段“人数”。④添加一个命令按钮Command1,单击该按钮时关闭表单。说明:完成该程序后必须运行,并且分别统计选修了“数据库”和“操作系统”课程的学生人数。标准答案:步骤1:命令窗口执行:OPENDATABASE学生管理,打开“学生管理”数据库环境。步骤2:命令窗口执行:MODIFYFORMsapp,修改sapp表单。右击表单选择【数据环境】,在表单数据环境中单击右键选择【添加】,在“添加表或视图”对话框中双击“课程”,将表添加到数据环境中。步骤3:修改列表框(List1)的“RowSourceType”属性值为:6-字段;再修改“RowSource”属性值为:课程.课程名。步骤4:列表框(List1)Click事件代码如下:*****列表框(List1)的Click事件代码*****aa=课程.课程名SELECTCOUNT(*)AS人数FROM考试成绩;WHERE考试成绩.课程编号=课程.课程编号;INTOTABLE&aa步骤5:通过“表单控件”工具栏向表单添加一个命令按钮,编写按钮的Click事件代码:THISFORM.RELEASE。步骤6:单击“常用”工具栏中的“运行”按钮查看结果,并分别单击“数据库”和“操作系统”,生成表文件。知识点解析:本题考查了表单及控件的常用属性和方法的设置;SQL简单的计算查询。本题关键是怎样获取列表框所选条目的值。由于已经将“课程”表添加到数据环境中,当表单运行时,“课程”被打开,其所在工作区即成为当前工作区,又因为列表框中数据与“课程”表的“课程名”字段绑定,所以列表框中所选条目的值,等于“课程”表当前记录的“课程名”的值。再利用SQL计算查询,在“考试成绩”表中查找并统计列表框中被选定条目(即课程名)的“选课人数”,利用COUNT()计数函数可以统计“人数”。进行SQL语句设计时,因为“考试成绩”表中没有“课程名”字段,但题目给出的筛选条件是根据“课程名”进行统计选修课程的学生人数,所以可以将查找条件设置为“考试成绩”表的“课程号”与“课程”表当前记录(即列表框中被选课程名对应的记录)的“课程号”相等为条件,进行查询统计的操作。国家二级VF机试(操作题)模拟试卷第9套一、基本操作题(本题共1题,每题1.0分,共1分。)1、(1)打开“订货管理”数据库,并将表order.detail添加到该数据库中。(2)为表order_detail的“单价”字段定义默认值为NULL。(3)为表order_detail的“单价”字段定义约束规则:单价>0,违背规则时的提示信息是:“单价必须大于零”。(4)关闭“订货管理”数据库,然后建立自由表customer,表结构如下:客户号字符型(6)客户名字符型(16)地址字符型(20)电话字符型
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年个人股权转让协议书范本4篇
- 2025年度绿色环保店铺租赁及设施共建合同
- 2025版时尚服饰销售合同模板(含季节性折扣)
- 2025年度个人别墅租赁合同模板2篇
- 2025年度环保工程监理服务合同范本
- 2025年度商铺买卖合同(含商业配套移交协议)4篇
- 2025-2030全球鱼雷泵行业调研及趋势分析报告
- 2025年全球及中国赛车运动驾驶模拟器行业头部企业市场占有率及排名调研报告
- 2024年临床医师定期考核试题中医知识题库及答案(共330题) (二)
- 2024年七年级语文下册期末专项复习:记叙文阅读
- 公司发展能力提升方案
- 电梯安全守则及乘客须知
- 你好法语第七课课件
- IT硬件系统集成项目质量管理方案
- 《容幼颖悟》2020年江苏泰州中考文言文阅读真题(含答案与翻译)
- 水上水下作业应急预案
- API520-安全阀计算PART1(中文版)
- 2023年广东省广州地铁城际铁路岗位招聘笔试参考题库附带答案详解
- 商务提成办法
- 直流电机电枢绕组简介
- GB/T 19889.5-2006声学建筑和建筑构件隔声测量第5部分:外墙构件和外墙空气声隔声的现场测量
评论
0/150
提交评论