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

下载本文档

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

文档简介

国家二级VF机试模拟试卷1(共6套)(共258题)国家二级VF机试模拟试卷第1套一、选择题(本题共40题,每题1.0分,共40分。)1、线性表常采用的两种存储结构是()。A、散列方法和索引方式B、链表存储结构和数组C、顺序存储结构和链式存储结构D、线性存储结构和非线性存储结构标准答案:C知识点解析:线性表的存储通常要用两种存储结构:顺序存储结构和链式存储结构。2、软件需求分析阶段的工作,可以分为四个方面:需求获取、编写需求规格说明书、需求评审和()。A、阶段性报告B、需求分析C、需求总结D、都不正确标准答案:B知识点解析:软件需求分析阶段的工作,可以概括为四个方面:需求获取、需求分析、编写需求规格说明书和需求评审。需求获取的目的是确定对目标系统的各方面需求。涉及到的主要任务是建立获取用户需求的方法框架,并支持和监控需求获取的过程。需求分析是对获取的需求进行分析和综合,最终给出系统的解决方案和目标系统的逻辑模型。编写需求规格说明书作为需求分析的阶段成果,可以为用户、分析人员和设计人员之间的交流提供方便,可以直接支持目标软件系统的确认,又可以作为控制软件开发进程的依据。需求评审是对需求分析阶段的工作进行复审,验证需求文档的一致性、可行性、完整性和有效性。3、在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是()。A、需求分析B、详细设计C、软件设计D、概要设计标准答案:A知识点解析:软件生命周期的主要活动阶段为:可行性研究和计划制定、需求分析、软件设计、软件实现、软件测试、运行和维护。其中需求分析是对开发软件提出的需求进行分析并给出详细定义,即准确地确定软件系统的功能,编写软件规格说明书及初步的用户手册,提交评审。4、对建立良好的程序设计风格,下面描述正确的是(.)。A、程序应简单、清晰、可读性好B、符号名的命名只要符合语法C、充分考虑程序的执行效率D、程序的注释可有可无标准答案:A知识点解析:程序设计应该简单易懂,语句结构应该简单直接,不应该为提高效率而把语句复杂化。5、下列工具中,不属于结构化分析的常用工具的是()。A、数据流图B、数据字典C、判定树D、N-S图标准答案:D知识点解析:结构化分析的常用工具有数据流图、数据字典、判定树和判定表。6、在软件生产过程中,需求信息的来源是()。A、程序员B、项目经理C、设计人员D、软件用户标准答案:D知识点解析:软件需求是指用户对目标软件系统在功能、性能、设计约束等方面的要求,是由用户提出的。7、对关系s和R进行集合运算,结果中既包含S中的所有元组也包含R中的所有元组,这样的集合运算称为()。A、并运算B、交运算C、差运算D、积运算标准答案:A知识点解析:关系的并运算是指由结构相同的两个关系合并,形成一个新的关系,新关系中包含两个关系中的所有元组。8、设有关键码序列(Q,G,M,Z,A,N,B,P,X,H,Y,S,T,L,K,E),采用堆排序法进行排序,经过初始建堆后关键码值B在序列中的序号是(.)。A、1B、3C、7D、9标准答案:B知识点解析:建堆的算法:首先将要排序的所有关键码放到一棵完全二叉树的各个结点中(这时的二叉树不具备堆的特性),然后,从i=[n/2](n为结点的个数)的结点Ki开始,逐步把以K[n/2],K[n/2]-1,K[n/2]-2,…为根的子树排成堆,直到以K1为根的树排成堆,就完成了建堆过程。此题中,n=16,i=[16/2]=8,即从第8个结点开始,建堆完成后如下图所示:所以经过初始建堆后关键码值B在序列中的序号是3。9、数据库的故障恢复一般是由()来执行恢复。A、电脑用户B、数据库恢复机制C、数据库管理员D、系统普通用户标准答案:C知识点解析:数据库一旦发生故障,需要及时进行故障恢复,并由数据库管理员负责执行故障恢复。10、下列选项中,不属于数据模型所描述的内容的是()。A、数据类型B、数据操作C、数据结构D、数据约束标准答案:A知识点解析:数据模型描述的内容包含数据结构、数据操作和数据约束。11、打印或预览报表的命令是()。A、CREATEREPORTB、DOFORMC、REPORTFORMD、STARTREPORI标准答案:C知识点解析:打印或预览报表的命令格式是:REPORTFORM<报表名>[PREVIEW]。12、在VFP中,关于查询和视图的正确描述是()。A、视图只能查询表但不能更新表B、查询和视图都是一个存储数据的表C、查询和视图是同一种文件,只是名称不同D、查询是一个预先定义好的SQLSELECT语句文件标准答案:D知识点解析:查询是一个预先定义好的SQLSELECT语句,在不同的场合可以直接或反复使用,从而提高效率。查询是从指定的表或视图中提取满足条件的记录,然后按照想得到的输出类型定向输出查询结果,以qpr为扩展名保存在磁盘上。视图是操作表的一种手段,并不真正含有数据,是从基本表中派生出的虚表,通过视图可以查询表,也可以更新表。视图是数据库中的一个特有功能,只有在包含视图的数据库打开时,才能使用视图。13、“项目”菜单的“运行文件”命令用于执行选定的文件,这些文件可以是()。A、查询、视图或表单B、查询、表单或程序C、表单、报表和标签D、以上文件都可以标准答案:B知识点解析:“项目”菜单的“运行文件”命令的功能是:执行选定的查询、表单或程序。14、设n=STR(-123.456,6,2),则n的值等于()。A、-123.45B、-123.46C、-123.5D、-123.4标准答案:C知识点解析:STR(<数值表达式>[,<长度>[,<小数位数>]]),将<数值表达式>的值转换成字符串,转换时根据需要自动进行四舍五入。返回字符串的理想长度L应该是<数值表达式>值的整数部分位数加上<小数位数>值,再加上1位小数点。如果<长度>值大于L,则字符串加前导空格以满足规定的<长度>要求;如果<长度>值大于等于<数值表达式>值的整数部分位数(包括负号)但又小于L,则优先满足整数部分而自动调整小数位数;如果<长度>值小于<数值表达式>值的整数部分位数,则返回一串星号<.)。<小数位数>的默认值为O,<长度>的默认值为10。15、运算结果是字符串“hao”的表达式是()。A、LEFT("nihao",3)B、RIGHT("nihao",3)C、SUBSTR("nihao",3)D、UPPER.("hao")标准答案:B知识点解析:LEFT(<字符表达式>,<长度>)函数从指定表达式值的左端取一个指定长度的子串作为函数值。RIGHT(<字符表达式>,<长度>)函数从指定表达式值的右端取一个指定长度的子串作为函数值。SUBSTR()函数从指定表达式值得指定起始位置取指定长度的子串作为函数值。UPPER(<字符表达式>)将指定表达式值中的小写字母转换’成大写字母,其他字符不变。16、下列运算结果为逻辑假(.F.)的是()。A、INT(X/5)=X/5B、INT(X/5)=MOD(X,5)C、MOD(X,5)=OD、MOD(X,5)=MOD(5,5)标准答案:B知识点解析:INT()函数的功能是返回指定数值表达式的整数部分。MOD()函数的功能是返回两个数值相除后的余数。假设X=10,则INT(10/5)=2,X/5=2,MOD(X,5)=0,MOD(5,5)=0。因为INT(X/5)=2,MOD(X,5)=0,所以选项B的等式不成立。17、恢复表中所有被逻辑删除记录的命令是()。A、REDELETEB、RECALLC、REPACKD、RESET标准答案:B知识点解析:被逻辑删除的记录可以恢复,恢复记录的命令是RECALL,格式如下:RECALL[FOR条件表达式]。18、通过指定字段的数据类型和宽度来限制该字段的取值范围,这属于完整性中的()。A、域完整性B、字段完整性C、参照完整性D、实体完整性标准答案:A知识点解析:域完整性也称为字段有效性规则,在插入或修改字段值时被激活,主要用于数据输入正确性的检验,可以限定字段取值类型和取值范围。实体完整性是保证表中记录惟一的特性,利用主关键字或候选关键字来实现。参照完整性与表之间的关联有关,它的大概含义是:当插入、删除或修改一个表中的数据时,通过参照引用相互关联的另一个表中的数据,来检查对表的数据操作是否正确。19、在VFP中,关于自由表叙述正确的是()。A、自由表不可以加入到数据库中B、自由表和数据库表是完全相同的C、自由表不能建立候选索引D、自由表不能建立字段级规则和约束标准答案:D知识点解析:在VFP中,自由表是不属于任何数据库的表,其操作基本与数据库表相同,但它不能设定各种字段级规则和约束:自由表能够创建候选索引、普通索引和惟一索引,但不能创建主索引;自由表可以添加到数据库中而成为数据库表,数据库表也可以从数据库中移出成为自由表。20、在VisualFoxPro的查询设计器中,对应SQL短语DISTINCT的选项卡是()。A、联接B、排序依据C、筛选D、杂项标准答案:D知识点解析:SQL中的DISTINCT短语用来消除查询结果中的重复项,对应“杂项”选项卡。21、视图设计器和查询设计器基本类似,但视图设计器比查询设计器多了()。A、“查询输出”选项卡B、“更新条件”选项卡C、“分组依据”选项卡D、“杂项”选项卡标准答案:B知识点解析:视图可以查询表,也可以更新表。所以有“更新条件”选项卡。22、显示当前表单程序代码是ThisForm.Show,其中的Show是表单对象的()。A、标题B、方法C、属性D、事件标准答案:B知识点解析:方法(method):也叫“方法程序”,它是指对象所固有完成某种任务的功能,可由我们在需要的时候调用。“方法”与“事件”有相似之处,都是为了完成某个任务,但同一个事件可完成不同任务,取决于您所编的代码是怎样的,而方法则是固定的,任何时候调用都是完成同一个任务,所以其中的代码也不需要我们编了,FOXPRO系统已为我们编好(我们也看不见),只需在必要的时候调用即可。Show方法:将表单显示出来。比如表单有一个命令按钮,如果希望单击该命令按钮时显示表单,就可以将该命令按钮的Click事件代码设置为Thisform.Show。23、假定_个表单里有一个文本框Textl和一个命令按钮组CommandGroupl。命令按钮组是一个容器对象,其中包含Commandl和Command2两个命令按钮。如果要在Commandl命令按钮的某个方法中访问文本框的Value属性值,正确的表达式是()。A、This.ThisForm.Textl.ValueB、This.Parent.Parent.Textl.ValHeC、Parent.Parent.Textl.ValueD、This.Parent.Textl.Value标准答案:B知识点解析:VFP中的对象一般可分为两种:容器对象和控件对象。容器可以包容其他的控件或容器,通常把容器对象称为那些被包容对象的父对象,这样就形成了对象的嵌套层次关系。在这种层次关系中,要引用其中的某个对象。就需要指明对象在嵌套层次中的位置。这时一般会用到一些引用属性或关键字,如PARENT是对象的一个属性,属性值为对象引用,指向该对象的直接容器对象:THIS、THISFORM和THISFORMSET是3个关键字,分别表示当前对象、当前表单和当前表单集。在所给题目中,共给出了5个对象,我们首先要清楚哪些是容器哪些是控件,以及它们之间的包容层次关系。表单是最外层的容器,其中有一个文本框控件Textl和一个容器命令按钮组CommandGroupI,而CommandGroupl中又有两个命令按钮控件Commandl和Command2,故CommandGroupI是Commandl和Command2的父对象,表单是CommandGroupl和Textl的父对象。现在要在Cornmandl的方法中访问文本框Text1对象,即Commandl是当前对象,但由于C6mmandl和Textl没有包容关系,故必须由Commandl找到跟Textl有包容关系的对象来引用,也就是Textl的父对象表单。This代表当前的Commandl,This.Parent指向父对象CommandGroupl,This.Parent.Parent则指向CommandGroupl的父对象表单,This.Parent.Parent.Textl则通过父对象表单引用了文本框TextI。对象访问属性的格式是:对象引用.对象属性。所以引用文本框Textl的Value属性,正确的表达式应该是This.Parent.Parent.Textl.Value。24、删除视图stuvw的命令是()。A、DROPstuvwB、DROPVIEWstuvwC、DELETEstuVWD、DELETEVIEWStuvw标准答案:B知识点解析:删除视图的命令是DROPVIEW视图名。25、要关闭当前处于打开状态的类库文件mylib,可以使用命令()。A、RELEASECLASSLIBmylibB、RELEASECLASSmyfibC、CLOSECLASSmylibD、CLOSECLASSLmmylib标准答案:A知识点解析:关闭当前处于打开状态的指定类库文件,可以使用RELEASECLASSLIB命令,其格式为:RELEASECLASSLIB<类库名>。26、下面关于过程调用的陈述中,正确的是()。A、实参与形参的数量必须相等B、当实参的数量多于形参的数量时,多余的实参被忽略C、当形参的数量多于实参的数量时,多余的形参取逻辑假D、选项B和C都对标准答案:C知识点解析:调用模块程序时,系统自动把实参传递给对应的形参。形参的数目不能少于实参的数目,否则系统会产生运行时错误。如果形参数目多于实参的数目,那么多余的形参取初值逻辑假。27、在创建数据库表结构时,为该表中一些字段建立普通索引,其目的是()。A、改变表中记录的物理顺序B、为了对表进行实体完整性约束C、加快数据库表的更新速度D、加快数据库表的查询速度标准答案:D知识点解析:建立索引,可以加快数据表的查询速度,不会改变表中的物理顺序。28、在命令窗口执行SQL命令时,若命令要占用多行,续行符是()。A、分号(;)B、冒号(:)C、连字符(.)D、逗号(,)标准答案:A知识点解析:若命令很长,在由显示窗口的大小确定的一行内显示不下,除了最后一行外,在每一行的最后要用续行符分号(;)结束。除此之外都是错误的。29、如果要运行SMENU.MPR文件,正确的命令是()。A、DOMENUSMENUB、DOSMENU.MPRC、RUNMENUSMENUD、RUNSMENU.MPR标准答案:B知识点解析:运行菜单程序的命令是:DO<菜单文件名.mpr>,必须带扩展名mpr。30、如果要为控件设置焦点,则下列属性值是真(.T.)的是()。A、Enabled和CancelB、Enabled和VisibleC、Default和CancelD、Ⅵsible和Cancel标准答案:B知识点解析:在表单的控件中,SetFocus可以让控件获得焦点,使其成为活动对象。如果一个控件的Enabled属性值和Visible‘属性值为.F.,将不能获得焦点,如果一个控件获得焦点,则Enabled属性值和Visible属性值为.T.。31、通过设置表单控件的哪种属性,可以改变光标在控件之间的移动次序()。A、TabsB、TabIndexC、IndexD、Move:标准答案:B知识点解析:通过Tablndex属性可以用来控制光标在控件之间的移动次序,光标按照1、2、3…的顺序依次移动。32、要为当前打开的“成绩”表中所有的“分数”增加5分,可以使用命令()。A、UPDATE成绩WITH分数+5B、CHANGEALL分数WITH分数+5C、DISPLAYALL分数WITH分数+5D、REPLACEALL分数WITH分数+5标准答案:D知识点解析:可以使用REPLACE命令修改记录,REPLACE命令的常用格式是:REPLACE.FieldNamelWITHeExpressionl[,FieldName2WITHeExpression2]…[FOR1Expression1]该命令的功能是直接利用表达式eExpression的值替换字段FieldName的值,从而达到修改记录值的目的,该命令一次可以修改多个字段(eRxpression1,eExpression2…)的值,如果不使甩FOR短语,则默认修改的是当前记录;如果使用了FOR短语,则修改逻辑表达式lExpression1为真的所有记录。选项A的UPDATE命令为SQL命令,且此处命令格式错误:选项C的CHANGE命令为交互状态下的修改记录的命令,此处命令格式也是错误的:选项D的DISPLAY命令是浏览记录的命令。33、将学号为“25”的学生姓名改为"王莉",以下SQL语句正确的是()。A、UPDATE学生SET姓名FOR姓名="王莉"WHERE学号="25"B、UPDATE学生WHERE姓名="王莉"AND学号="25"C、UPDATEFROM学生WHERE姓名="王莉"AND学号="25"D、UPDATE学生SET姓名="王莉"WHERE学="25"标准答案:D知识点解析:SQL的数据更新格式为:UPDATETablenameSETColumn_name1=eExpression1[,Column_Name2=eExpression2…]WHERECondition一般使用WHERE子句指定条件,以更新满足条件的一些记录的字段值,并且一次可以更新多个字段;如果不使用WHERE子句,则更新全部记录。34、与“SELECT*FROM歌手WHERENOT(最后得分>9.00OR最后得分<8.0)”等价的语句是()。A、SELECT*FRoM歌手WHERE最后得分BETWEEN9.00AND8.00B、SELECT*FROM歌手WHERE最后得分>=8.00AND最后得分<=9.00C、SELECT*FROM歌手WHERE最后得分>9.00OR最后得分<8.00D、SELECT*FROM歌手WHERE最后得分<=8.00AND最后得分>=9.00标准答案:B知识点解析:题干中SELECT语句的意义为:选择出“歌手”表中所有“最后得分”字段中值不大于9.00(包括9.00)及不小于8.00(包括8.00)记录的所有字段,选项C中SQL语句的意义是选择出“歌手”表中所有“最后得分”字段中值大于9.00或小于8.00的记录,与题意不符。选项D中SQL语句的意义是选择出“歌手”表中所有“最后得分”字段中值小于等于9.00或大于等于8.00的记录,与题意不符。选项A中使用了BETWEEN…AND…表达式,当BETWEEN作取值范围限定时,包括限定条件的两个端点值,并且使用BETWEEN…AND…的两个限定值应当遵循从小到大的原则,而此题正好相反,所以不可能查出结果。35、设有职工表(其中包含字段:职工号,仓库号,工资),查询仓库号是“Ck1”的职工信息并按工资降序排序,正确的SQL命令是()。A、SELECT*FROM职工表WHERE仓库号="CK1"ORDERBY工资DESCB、SELECT*FROM职工表WHILE仓库号="CK1"ORDERBY工资ASCC、SELECT*FROM职工表WHERE仓库号="CK1"ORDERBY工资ASCD、SELECT*FROM职上表WHERE仓库号="CK1"GROUPBY工资DESC标准答案:A知识点解析:在用SQL语句进行查询时,对结果字段排序应使用ORDERBY短语,降序排序使用DESC子旬。36、对项目进行连编测试的目的是()。A、对项目中各种程序的引用进行校验B、对项目中PRG文件进行校验,检查发现其中的错误C、对项目中各种程序的引用进行校验,检查所有的程序组件是否可用D、对项目中各种程序的引用进行校验,检查所有的程序组件是否可用,并重新编译过期的文件标准答案:D知识点解析:对项目进行连编的目的是为了对程序中的引用进行校验,同时检查所有的程序组件是否可用。通过重新连编项目,VisualFoxPro会分析文件的引用,然后重新编译过期的文件。下面题使用如下的“外汇名”表和“持有数”表:“外汇名”表:37、查询持有外币种类在4种以上人员的姓名,及持有的种类数量,并按种类数量升序排列,数量相同时,则按姓名降序排列,下列语句正确的是()。A、SELECT姓名,COUNT(*)AS外币种类FROM持有数;GROUPBY姓名HAVINGCOUNT(*)>=4;ORDERBY外币种类,姓名DESCB、SELECT姓名,COUNT(*)AS外币种类FROM持有数;GROUPBY姓名HAVINGCOUNT(*)>=4;ORDERBYCOUNT(*),姓名DESCC、SELECT姓名,COUNT(*)AS外币种类FROM持有数;GROUPBY姓名HAVINGCOUNTf*)>=4;ORDERBY外币种类AND姓名DESCD、SELECT.姓名,COUNT(*)AS外币种类FROM持有数;GROUPBY姓名HAVINGCOUNT(*)>=4;ORDERBY外币种类+姓名DESC.标准答案:A知识点解析:本题中首先通过GROUPBY’短语按“姓名”字段对“持有数”表中的记录进行分组,然后利用COUNT()分组统计每个人持有的外币种类,再通过HAVING子句限定外币种类至少在4种以上的记录;利用ORDERBY短语可以对查询结果进行排序,有升序(ASC)和降序(DESC)两种,默认的为升序排序方式,如果排序字段有多个,则每个字段之间用逗号隔开。38、计算出“陆凭凭”所持有的全部外币相当于人民币的价值数量,下列语句正确的是()。(某种外币相当于人民币数量的计算公式:人民币价值数量=该种外币的“现钞买入价”*该种外币“持有数量”)A、SELECTSUM(现钞买入价*持有数量)AS人民币价值;FROM持有数,外汇名:WHERE外汇名.外币代码=持有数.外币代码;AND姓名="陆凭凭"B、SELECTSUM(现钞买入价木持有数量)AS人民币价值;FROM持有数,外汇名;WHERE外汇名.外币代码=持有数.外币代码:FOR姓名="陆凭凭"C、SELECTCOUNT(现钞买入价木持有数量)AS人民币价值;FROM持有数,外汇名;WHERE外汇名.外币代码=持有数.外币代码:AND姓名="陆凭凭"D、SELECTCOUNT(现钞买入价峙*有数量)AS人民币价值;FROM持有数,外汇名;WHERE外汇名.外币代码=持有数.外币代码;FOR姓名=”陆凭凭”标准答案:A知识点解析:本题中查询的“现钞买入价”是来自“外汇名”表的字段,“持有数量”来自“持有数”表,进行计算查询时需要采用连接查询的方式对两表进行查询,两表的连接条件在WHERE短语中指定,另外对记录进行筛选的条件通过AND短语与表的连接条件一起放在.WHERE短语之后。39、将“外汇名”表美元和英镑的基准价下调1%,下列SQL语句正确的是()。A、UPDATE外名FOR基准价=基准价*O.99;WHERE外币名称="美元"OR外币名称="欧元"B、UPDATE外汇名SET基准价=基准价*0.99;WHERE外币名称="美元"OR外币名称="欧元"C、UPDATE外汇名SET基准价=基准价*0.99;WHERE外币名称="美元"AND外币名称="欧元"D、UPDATE外汇名FOR基准价=基准价*0.99;WHERE外币名称="美元"AND外币名称="欧元"标准答案:B知识点解析:SQL的数据更新命令格式为:UPDATE<表名>SET列名1≤表达式1[列名2=表达2…][WHERE<条件表达式>]一般使用WHERE子旬指定条件,以更新满足条件的一些记录的字段值,并且一次可以更新多个字段;如果不使用WHERE子句,则更新全部记录。40、删除“持有数”表中所有外币名称为“法郎”的记录,下列SQL语句正确的是()。A、DELETEFROM持有数:WHERE持有数.外币代码=外汇名.外币代码;AND外币名称="法郎"B、DELETE.FROM持有数,外汇名;WHERE持有数.外币代码=外汇名.外币代码:AND外币名称="法郎"C、DELETEFROM持有数WHERE外币代码IN;(SELECT外币代码FROM外汇名WHERE外币名称="法郎")D、DE[,ETEFROM持有数WHERE外币代码IN;SELECT外币代码FROM外汇名WHERE外币名称="法郎"标准答案:C知识点解析:利用SQL数据操作功能,可以逻辑删除数据表中的记录。其命令格式为:DELETEFROM<表名>[WHERE过滤条件1[ANDfOR过滤条件2…]]其中,该命令语句只能对单表进行更新,选项A和B)中的FROM短语指定了两个数据表,属于语法错误,选项D中使用IN短语时,子查询要用括号括起来。二、基本操作题(本题共1题,每题1.0分,共1分。)41、在考生文件夹下的“雇员管理”数据库中完成如下操作:(1)为“雇员”表增加一个字段名为EMAIL、类型为“字符型”、宽度为20的字段。(2)设置“雇员”表中“性别”字段的有效性规则,性别取“男”或“女”,默认值为“女”(3)在“雇员”表中,将所有记录的EMAIL字段值使用“部门号”的字段值加上“雇员号”的字段值再加上“@xxxx.com.cn”进行替换。(4)通过“部门号”字段建立“雇员"表和“部门”表间的永久联系。标准答案:(1)①在命令窗口执行命令:MODIFYDAABASE,打开“雇员管理”数据库设计器。②右击数据库设计器中的“雇员”表,选择[修改]快捷菜单命令,打开“雇员”表设计器,在表设计器“字段”选项卡的“字段名”列的最后一个空白文本框中输入字段名“email”,在“类型”下拉框中选择“字符型”,在“宽度”文本框中输入“20”,保存表结构修改。(2)继续打开“雇员”表设计器,选中“字段”选项卡中的“性别”字段,然后在“字段有效性”的“规则”文本框中输入:性别$”男女”,在“默认值”文本框中输入:”女”。(3)在命令窗口执行如下命令修改email字段值:UPDATE雇员SETemail=ALLTRIM(部门号)+ALLTRIM(雇号)+"@"(4)在数据库设计器中拖动“部门”表“索引”下方的主索引“部门号”到“雇员”表中“索引”下方的普通索引“部门号”上,为两个表建立联系。知识点解析:本题考查了表结构的修改;字段有效性的设置;表之间联系的建立.修改表结构可以在表设计器中完成,打开表设计的方法有多种,可在数据库设计器中打开,也可以直接通过命令打开;同样,设置字段有效性规则也需要在表设计器中完成:对于SQL非常熟悉的考生,也可以直接通过SQL语句完成以上操作。利用SQLUPDATE语句可以更新表中记录,本题可直接套用SQL.语句的固定语法完成记录的修改。对两个表建立联系是在数据库设计器中进行操作的,本题的关键是要找出每两个表之间的相同字段,并分别设置主索引和普通索引,再进行联接,打开数据库设计器可以看到数据库中所包含的数据表及各数据表中_的字段。三、简单应用题(本题共1题,每题1.0分,共1分。)42、(1)用SQL语句完成下列操作:检索“田亮”所借图书的书名、作者和价格,结果按价格降序存入booktemp表中。(2)在考生文件夹下有一个名为menu_lin的下拉式菜单,请设计顶层表单form_menu,将菜单menu_lin加入到该表单中,使得运行表单时菜单显示在本表单中,并在表单退出时释放菜单。标准答案:(1)在命令窗口执行命令:SELECTBook.书名,Book.作者,Book.价格;FROM图书!bookINNERJOIN图书!loans;INNERJOIN图书!borrows:ONLoans.借书证号=Borrows.借书证号;ONBook.图书登记号=Loans.图书登记号:WHEREBorrows.姓名="田亮";ORDERBYBook.价格DESC;INTOTABLEbook_temp.dbf(2)步骤1:在命令窗口执行命令:CREATEFORMform_menu,打开表单设计器。选中表单,在“属性”窗口中修改表单(Form1)的“showWindow”属性值设置为“2-作为顶层表单”。步骤2:双击表单(Form1)编写表单的Init事件代码,代码如下:Domenu_lin.mprWITHTHIS,’xxx’步骤3:双击表单(Foml)编写表单的Destroy事件代码,代码如下:RELEASEMENUxxxEXTENDED步骤4:单击“常用”工具栏中的“运行”按钮查看结果,将表单文件保存到考生文件夹下。知识点解析:(1)本题考查的是SQL联接查询。根据题意,该查询用到了book、loans和borrows三张表,对应有两个联接表达式。(2)本题主要考查的是菜单在顶层表单中的应用。主要包括两大部分的操作,即菜单设计和表单设计。操作过程可按以下步骤进行:通过菜单设计器建立菜单,注意主菜单和子菜单的建立.菜单设计有两个关键操作:一是在菜单设计器中勾选“常规选项”对话框中的“顶层表单”,表示此菜单存在项层表单中;二是在释放表单时,要使用表单的文件名,即本题中可以通过MAINFORM.RELEASE命令释放MAINFORM表单,注意:不要使用THISFORM.RELEASE命令释放表单.在表单设计过程中,要注意将表单设置为顶层表单,通过表单的showwindow属性值可以进行设置,而在表单中调用菜单文件是在表单的Load(或INIT)事件中进行调用,还需要通过THIS短语指定当前表单时象的引用。其基本格式为:DO<菜单文件.mpr>WITHTHIS[,"<菜单内部名>"]。四、综合应用题(本题共1题,每题1.0分,共1分。)43、设计一个文件名和表单名均为myaccount的表单。表单的标题为“外汇持有情况”。表单中有一个选项按钮组控件(myOption)、一个表格控件(Gridl)以及两个命令按钮“查询”(Commandl)和“退出”(Command2)。其中,选项按钮组控件有两个按钮“现汇”(Optionl)、“现钞”(Option2)。运行表单时,首先在选项组控件中选择“现钞”或“现汇”,单击“查询”命令按钮后,根据选项组控件的选择将“外汇账户”表的“现钞”或“现汇”(根据钞汇标志字段确定)的情况显示在表格控件中。如下图所示。单击“退出"按钮,关闭并释放表单。注:在表单设计器中将表格控件Gridl的数据源类型设置为“SQL说明”。标准答案:步骤1:在命令窗口执行命令:CREATEFORMmyaccount,打开表单设计器新建表单。从“表单控件”工具栏中依次向表单添加一个选项按钮组、一个表格及两个命令按钮控件。步骤2:在“属性”面板的下拉框中选择表单对象,在“全部”选项卡中修改对象属性值,见表3。步骤3:双击命令按钮,编写各个命令按钮的Click事件代码。各按钮代码如下:**“查询”的click事件代码(以下SQL查询语句是通过查询设计器生成)**DOCASECASETHISFORM.MYOPTION.VALUE=1&&当选择选项组第一个选项时THISFORM.GRIDl.RECORDSOURCE="SELECT外汇账户。外币代码,外汇账户.金额;FROM外汇!外汇账户:WHERE外汇账户.钞汇标志=’现汇’:&&此处注意字符串的定界符要与双引号定界符不同INTOCURSORtemp"&&将查询结果输出到临时表temp中CASETHISFORM.MYOPTION.VALUE=2&&当选择选项组第二个选项时THISFORM.GRIDl.RECORDSOURCE="SELECT外汇账户.外币代码,外汇账户.金额:FROM外汇!外汇账户;WHERE外汇账户.钞汇标志=现钞;&&此处注意字符串的定界符要与双引号定界符不同INTOCURSORTEMP"&&将查询结果输出到临时表temp中ENDCASE**“退出”按钮的C1ick事件代码**THISFORM.RELEASE步骤4:单击“常用”工具栏中的“运行”按钮查看结果,将表单文件保存到考生文件夹下。知识点解析:本大题考查了表单及控件的常用属性和方法的设置;程序的分支结构;SQL简单查询。对本题操作时,首先根据题意新建表单、添加控件并修改相关属性。修改选项组单选按钮的标题属性值时,要注意选项组处于“编辑”状态,能单独选定选项组中的按钮,否则“属性”面板中不会出现Caption属性,另外,由于表格(Gridl)显示的是查询结果的值,因此数据源类型(RecordSourceType)应为“4-SQL说明”,用来显示查询生成的临时表记录.由于查询是根据选项组中单个选项进行操作的,因此需要判断单击时被选定的是哪个单选项来执行相应的功能。选项组中获得当前被选中单选项的返回值属性是Value,当选项组的value值为1时表示被选定的是第一个单选项,Value值为2时表示被选定的是第二个单选项。在进行代码设计时,可以通过DOCASE分支结构判断当前被选定的是哪个单选项,并完成该单选项所对应执行的功能。SQL程序设计部分考查的是SQL简单查询,属于最简单的查询语句:注意:查询条件表达式中字符串定界符要与指定表格数据源使用的字符定界符不同。国家二级VF机试模拟试卷第2套一、选择题(本题共40题,每题1.0分,共40分。)1、在关系代数运算中,有5种基本运算,它们是()。A、并(∪)、差(一)、交(∩)、除(÷)和笛卡儿积(×)B、并(∪)、差(一)、交(∩)、投影(π)和选择(σ)C、并(∪)、交(∩)、投影(π)、选择(σ)和笛卡儿积(×)D、并(∪)、差(一)、投影(π)、选择(σ)和笛卡儿积(×)标准答案:D知识点解析:并、差、笛卡儿积、投影和选择是5种基本的运算,其他运算即交、连接和除,均可以通过5种基本的运算来表达。2、在数据库系统的组织结构中,下列()映射把用户数据库与概念数据库联系了起来。A、外模式/模式B、内模式/外模式C、模式/内模式D、内模式/模式标准答案:A知识点解析:数据库有两层映象,即外模式/模式和模式/内模式映象。模式/内模式映象定义数据库全局逻辑结构与存储结构之间的对应关系。3、下列关于线性链表的描述中,正确的是()。I、只含有一个指针域来存放下一个元素地址II、指针域中的指针用于指向该结点的前一个或后一个结点(即前件或后件)III、结点由两部分组成:数据域和指针域。A、仅I、IIB、仅I、IIIC、仅II、IIID、全部标准答案:D知识点解析:在定义的链表中,若只含有一个指针域来存放下一个元素地址,称这样的链表为单链表或线性链表。在链式存储方式中,要求每个结点由两部分组成:一部分用于存放数据元素值,称为数据域;另一部分用于存放指针,称为指针域。其中指针用于指向该结点的前一个或后一个结点(即前件或后件)。4、下面关于数据库三级模式结构的叙述中,正确的是()。A、内模式可以有多个,外模式和模式只有一个B、外模式可以有多个,内模式和模式只有一个C、内模式只有一个,模式和外模式可以有多个D、模式只有一个,外模式和内模式可以有多个标准答案:B知识点解析:数据库的三级模式结构是指数据库系统的外模式、模式和内模式。一个数据库可以有多个外模式,但只有一个模式和一个内模式。5、设有关键码序列(66,13,51,76,8l,26,57,69,23),要按关键码值递增的次序排序,若采用快速排序法,并以第一个元素为划分的基准,那么第一趟划分后的结果为()。A、23,13,51,57,66,26,81,69,76B、13,23,26,51,57,66,81,76,69C、23,13,51,57,26,66,81,69,76D、23,13,51,57,81,26,66,69,76标准答案:A知识点解析:快速排序是起泡排序的改进。在快速排序中,任取一个记录,以它为基准用交换的方法将所有的记录分成两部分,关键码值比它小的在一部分,关键码值比它大的在另一部分,再分别对两个部分实施上述过程,一直重复到排序完成。6、下列哪一条不属于数据库设计的任务?()A、设计数据库应用结构B、设计数据库概论结构C、设计数据库逻辑结构D、设计数据库物理结构标准答案:A知识点解析:数据库设计工作量大而且过程复杂,既是一项数据库工程也是一项庞大的软件工程。考虑数据库及其应用系统开发全过程,将数据库设计分为以下6个阶段:需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库实施和数据库的运行和维护。7、数据库技术的根本目标是()。A、数据存储B、数据共享C、数据查询D、数据管理标准答案:B知识点解析:数据库是长期储存在计算机内、有组织的、可共享的大量数据的集合,它具有统一的结构形式并存放于统一的存储介质内,是多种应用数据的集成,并可被各个应用程序所共享,所以数据库技术的根本目标是解决数据共享问题。8、需求分析阶段的任务是()。A、软件开发方法B、软件开发工具C、软件开发费用D、软件系统功能标准答案:D知识点解析:需求分析是软件定义时期的最后一个阶段,它的基本任务就是详细调查现实世界要处理的对象,充分了解原系统的工作概况,明确用户的各种需求,然后在这些基础上确定新系统的功能。9、关系数据库管理系统能实现的专门关系运算包括()。A、排序、索引、统计B、选择、投影、连接C、.关联、更新、排序D、显示、打印、制表标准答案:B知识点解析:关系数据库管理系统的专门关系运算包括选择运算、投影运算和连接运算。10、数据管理技术发展的三个阶段中,()没有专门的软件对数据进行管理。I.人工管理阶段II.文件系统阶段III.数据库阶段A、仅IB、仅IIIC、I和IID、II和III标准答案:A知识点解析:数据管理技术发展的三个阶段中,只有人工管理阶段,没有操作系统,没有管理数据的软件,数据处理方式是批处理。在文件系统阶段,操作系统中已经有了专门数据管理软件,一般称为文件系统。在数据库系统阶段,出现了统一管理数据的专门软件系统,即数据库管理系统。11、在关系模型中,每个关系模式中的关键字()。A、可由多个任意属性组成B、最多由一个属性组成C、可由一个或多个其值能惟一标识关系中任何元组的属性组成D、以上说法都不对标准答案:C知识点解析:在关系模型中,关键字的定义为:属性或属性的组合,其值惟一地标识一个元组。在VFP中,关键字表示为字段或字段的组合。12、下列函数中函数值为数值型的是()。A、YEAR()B、DATE()C、TIME()D、DATETIME()标准答案:A知识点解析:YEARl()从指定的日期表达式或日期时间表达式中返回年份,返回值为数值型:DATE()返回当前系统日期,返回值为日期型;TIME()以24小时制、hh:mm:ss格式返回当前系统时间,函数值为字符型;DATETIME()返回当前系统日期时间,函数值为日期时间型。13、在SQL语句中,与表达式“供应商名LIKE”%北京%””功能相同的表达式是()。A、LEFT(供应商名,4)="北京"B、北京$供应商名C、供应商名IN"%北京%"D、AT(供应商名,"北京")标准答案:B知识点解析:函数LEFT(<字符表达式>,<长度>)的功能是从指定表达式的左端取一个指定长度的子串作为函数值。选项A的含义是供应商名前两个汉字为“北京”。函数AT(<字符表达式1>,<字符表达式2>[,<数值表达式1>])的功能是:如果<字符表达式1>是<字符表达式2>的子串,则返回<字符表达式l>值的首字符在<字符表达式2>值中的位置;若不是子串,则返回0。因此选项D的含义是返回供应商名在“北京”字符串中的位置。选项C是一个错误的表达式。选项B中的运算符$是子串包含测试,“北京”$“供应商名”表示“北京”是否是“供应商名”字段的子串,能够与题干中的LIKE实现同样功能的只有选项B。14、执行下列程序:AA=0FORI=2TO100STEP2AA=AA+IENDFOR?AARETURN该程序得到的结果为()。A、1~100中奇数的和B、1~100中偶数的和C、1~100中所有数的和D、没有意义标准答案:B知识点解析:在FOR.循环中的循环变量I被初始化为2,在FOR语句中又规定了步长的值为2,意思是每执行一次循环体,I的值便加2,程序中所有的I值都是偶数,AA的值为一个累加的数字,所以此题中所求的是1~100中偶数的和。15、执行以下程序,然后输入“123456”,则程序的输出结果是,()。ACCEPTTOAIFA=[123456]S=0ENDIFS=1?SRETURNA、0B、1C、123456D、程序错误.标准答案:B知识点解析:ACCEPT命令的功能是等待用户从键盘输入字符串。当用户以回车键结束输入时,系统将该字符串存入指定的内存变量,然后继续往下执行程序。按照顺序执行的原则无论是否执行IF语句,语句S=1赋值语句都会执行。所以本程序段最终输出1。16、函数LOWER("NCRE123")的值是()。A、NCREl23B、NCREC、ncrel23D、ncrc标准答案:C知识点解析:LOWER()将指定字符表达式的大写字母转换成小写字母,其他字符不变。17、查询设计器中包括的选项卡有()。A、联接、显示、排序依据B、更新条件、排序依据、显示C、筛选、排序依据、分组依据D、更新条件、筛选、联接标准答案:C知识点解析:在查询设计器界面中,有6个选项卡,它们分别是:字段、联接、筛选、排序依据、分组依据和杂项,没有更新条件选项卡。18、在VisualFoxpro中,关于视图的正确叙述是()。A、视图不能同数据库表进行连接操作B、视图是从一个或多个数据库表导出的虚拟表C、视图与数据库表相同,用来存储数据D、在视图上不能进行更新操作标准答案:B知识点解析:视图是从一个或多个表中导出的虚拟表,它可使用户从表中提取选定的一组记录,并改变记录的值,然后将更新记录返回源表。它是操作表的一种手段,通过视图可以查询表,也可以更新表。在视图中可以建立索引,也可以与数据库表建立联系。表是用来存储用卢数据的,而视图实际上不包含数据,它是虚表。19、在表单设计中,ThisformSet关键字的含义是指()。A、当前对象的直接容器对象B、当前对象所在的表单C、当前对象D、当前对象所在的表单集标准答案:D知识点解析:在VisuaLFoxPro中,Parent表示当前对象的直接容器对象;Thisform当前对象的所在表单;This当前对象:Thisformset当前对象所在的表单集。20、在学生表中共有100条记录,执行如下命令,执行结果将是()INDEXON-总分TO.ZFSETINDEX.TOZFGOTOPDISPLAYA、显示的记录号是1B、显示分数最高的记录号C、显示的记录号是100D、显示分数最低的记录号标准答案:B知识点解析:利用命令INDEX建立总分降序的索引后,表的记录已经按照总分降序排列,执行命令GOTOP将指针移至排序后的第。一条记录,该记录就是总分最高的记录。21、SQL语言的插入命令的关键词是()。A、INSERTB、UPDATEC、CREATED、SELECT标准答案:A知识点解析:在SQL语言中,UPDATE是更新命令,.INSERI’是插入命令,CREATE是创建表的命令,SELECT’是查询命令。22、如果学生表student是使用下面的SQL语句创建的CREATETABLEstudent(学号C(4)PRIMARYKEYNOTNULL,;姓名C(8),;性别C(2),;年龄N(2)CHECK(年龄>15.AND年龄<30))下面的SQL语句中可以正确执行的是()。A、INSERTINTOstudent(学号,性别,年龄)VALUES("0542","男",17)B、INSERTINTOstudent(姓名’性别,年龄VALUES("李蕾","女",20)C、INSERTINTOstudent(姓名,性别,年龄)VALUES("男",25)D、INSERTINTOstudent(学号,姓名)VALUES("0897","安宁",16)标准答案:A知识点解析:由于“学号”是主关键字,不可以为空,因此是必填字段,在用INSERT插入记录时,学号字段的值不可省,故选项B和选项C不正确,在用INSERT插入记录时,初值的个数必须和字段个数相等,故选项D不正确。PRIMARYKEYNOT。NULL,用来定义学号为主关键字,并且不可为NULL值,CHECKq(AGE>15.ANDAGE<30)语句用来约束字段年龄必须大于15并且小于30。23、建立一个视图salary,该视图包括了系号和(该系的)平均工资两个字段,正确的SQL语句是()。A、CREATEVIEWsalaryAS系号,AVG(工资)AS平均工资FROM.教师;GROUPBY系号B、CREATEVIEWsalaryASSELECT系号,AVG(工资)AS平均工资FROM教师;GROUPBY系名C、CREATEVIEWSalarySELECT系号,AVG(工资)AS平均工资FROM教师;GROUPBY系号D、CREATEVIEWsalaryASSELECT系号,AVG(工资)AS平均工资FROM教师;GROUPBY系号标准答案:D知识点解析:建立视图的命令格式如下:CRATEVIEWview_nameASselect_statement其中select_statement可以是任意的SELECT查询语句,它说明和限定了视图中的数据:视图的字段名与select_statement中指定的字段名或表中的字段名同名。24、设在表单有一个页框,页框包含两个页面Pagel和Page2。假设Page2没有设置Click事件代码,而Pagel,及页框和表单都设置了Click.事件代码。那么当表单运行时,如果单击Page2,系统将()。A、执行表单的Click事件代码B、执行页框的Click事件代码C、执行页框的Pagel的Click事件代码D、不会有任何反应标准答案:D知识点解析:Click事件是鼠标单击事件,页框和页框中的页面每个都可以看成是一个独立的容器类控件,必须在相应的对象中设置了Click事件代码,在单击对象时才会触发相应的单击事件。由于Page2没有设置Click事件,所以单击它不会有任何反应。25、单击表单中的命令按钮,要求弹出一个“祝考试顺利!”的消息对话框,应该在命令按钮的Click事件中编写代码()。A、Message(祝考试顺利!)B、Message(”祝考试顺利!”)。C、Messagebox(祝考试顺利!)D、Messagebox(”祝考试顺利!”)标准答案:D知识点解析:以对话框形式显示信息,可以使用命令:MessageBox(信息文本[,对话框类型][,标题文本])其中,信息文本是在对话框中显示的信息;对话框类型是3个整数之和,用于指定对话框的样式,包括对话框中的按钮形式及其数目、图标样式以及缺省按钮;标题文本为指定对话框标题栏的文本。26、如果文本框的INPUTMASK属性值是#X9999,允许在文本框中输入的是()。A、$12345B、+12345C、abcdefD、abcl23标准答案:B知识点解析:InputMask属性指定控件中数据的输入格式和显示方式。27、如果添加到项目中的文件标识为“排除”,表示()。A、此类文件不是应用程序的一部分B、生成应用程序时包括此类文件,用户可以修改C、生成应用程序时不包括此类文件D、生成应用程序时包括此类文件,用户不能修改标准答案:B知识点解析:将一个项目编译成一个应用程序时,所有项目包含的文件将组合为一个单一的应用程序文件。在项目连编之后,那些在项目中标记为“包含”的文件将变为只读文件。如果应用程序中包含需要用户修改的文件,必须将该文件标识为“排除”。28、作为整个应用程序入口点的主程序至少应具有以下功能()。A、初始化环境B、初始化环境、显示初始用户界面C、初始化环境、显示初始用户界面、控制事件循环D、初始化环境、显示初始的用户界面、控制事件循环、退出时恢复环境。标准答案:D知识点解析:主程序作为整个应用程序的入口点,其功能包括初始化环境;显示初始的用户界面:控制事件循环;当退出应用程序时恢复原来的开发环境。29、利用SQL命令删除“学生”表中的“年龄”字段,正确的命令格式是()。A、ALTERTABLE学生DELETECOLUMN年龄B、ALTERTABLE学生DROPCOLUMN年龄C、ALTERTABLE学生CANCELCOLUMN年龄D、ALTERTABLE学生CUTCOLUMN年龄标准答案:B知识点解析:从表中删除指定字段的SQL命令是:ALTER。TABLE表名DROP[COLtYMN]字段名其中,COLUMN可以省略。30、要将组合框设置成允许编辑,应进行设置的属性是()。A、StyleB、ControlSourceC、EnabledD、Value标准答案:A知识点解析:组合框用于提供一组条目供用户从中选择。Style属性用于选择组合框的形式,即下拉组合框或下拉列表框,下拉组合框可以在编辑区内编辑;ControlSouree为组合框指定要绑定的数据源,用于设置和保存组合框的选择状态;Enabled属性设置当前列表项是否可用;Value属性返回组合框中被选中的条目。31、VisualFoxPro中APPENDBLANK命令的作用是()。A、在表的尾部添加记录B、在当前记录之前插入新记录C、在表的任意位置添加记录D、再表的首行添加记录标准答案:A知识点解析:APPENDBLANK.是在表的尾部增加一条空白记录,然后再用EDIT、CHANGE或BROWSE命令交互输入修改空白记录的值,或用REPLACE命令直接修改该空白记录值。32、用当前窗体的LABELl控件显示系统时间的语句是()。A、THISFORM.LABEL1.CAPTION.TIMEB、THISFORM.LABEL1.CAPTION.TIME()C、THISFORM.LABEL1.CAPTION=TIME.D、THISFORM.LABEL1.CAPTION=TIME()标准答案:D知识点解析:标签控件(Labell)的Caption属性用于指定标签中显示的内容,在这里,通过指定标签的标题(CAPTION)属性值等于系统时间(TIME())来显示系统时间,。TIME()是表示系统时间的函数。33、下面的SQL语句能实现的功能是()。SELECT*FROM学生WHERE班级号="0801";UNION;SELECT*FROM学生WHERE班级号="0802"A、查询在0801班或0802班的学生信息B、查询0801班或0802班的班级信息C、查询既在0801班又在0802班的学生信息D、语句错误,不能执行标准答案:A知识点解析:SQL支持集合的并(UNION)运算,即可以将两个SELECT语句的查询结果通过并运算合并成一个查询结果。为了进行并运算,要求这样的两个查询结果具有相同的字段个数,并且对应字段的值要出自同一个值域(相同的数据类型和取值范围)。所以题干中的SQt,语句实现的功能是查询班级号为0801或0802的学生信息。34、使用SQL语句查找“成绩”表中有“分数"的记录,正确的是()。A、SELECT*FROM成绩WHERE分数ISNULLB、SELECT*FROM成绩WHERE分数NOTNULLC、SELECT*FRoM成绩WHERE分数ISNOTNULLD、SELECT*FROM成绩WHERE分数=NOTNULL标准答案:C知识点解析:在SQL语句中,用NULL表示空值,表示尚未确定的值,查询空值时使用“ISNULL”短语,非空值为“ISNOTNULL”。本题中要求查询成绩表中有“分数”的记录,则要求“分数’字段值不能为空,因此使用ISNOTNULL短语。35、设有“职工”表文件,在“职工”表中查找“基本工资”最低的职工的姓名,则下列SQL语句横线部分的语句是()。SELECT姓名FROM职工;WHERE__________;(SELECT基本工资FROM职工)A、基本工资INB、基本工资=C、基本工资<=ALLD、基本工资>=ANY标准答案:C知识点解析:SQL语句中可以利用ANY、ALL等量词进行查询。ANY、ALL和SOME是量词,其中ANY和SOME是同义词,在进行比较运算时只要子查询中有一行能使结果为真,则结果为真;而ALL则要求子查询中的所有行都使结果为真时,结果才为真。36、下列有关SQL内外层互相关嵌套查询叙述正确的是()。A、外层查询依赖于内层查询的结果,而内层查询与外层查询无关B、内层查询依赖于外层查询的结果,而外层查询与内层查询无关C、外层查询的条件需要内层查询提供值,而内层查询的条件需要外层查询的结果D、内层查询的条件需要外层查询提供值,而外层查询的条件需要内层查询的结果标准答案:D知识点解析:嵌套查询是外层查询依赖于内层查询的结果,而内层查询与外层查询无关。事实上,有时也需要内外层互相关的查询,这时内层查询的条件需要外层查询提供值,而外层查询的条件需要内层查询的结果。37、设有“职工”表,表结构如下:职工(部门号C(2)、职工号C(4)、姓名C(8)、年龄N(2)、工资N(7,2))检索最少有3名职工的每个部门的职工工资的总额()。A、SELECT部门号,COUNT(*),SUM(工资)FROM职工;HAVVINGCOUNT(*)>=3B、SELECT部门号,COUNT(*),SUM(工资)FROM职工;GROUPBY基本工资HAVINGCOUNT(*)>=3C、SELECT部门号,COUNT(*),SUM(工资)FROM职工;GROUPBY部门号HAVINGCOUNT(*)>=3D、SELECT部门号,COUNT(*),SUM(工资)FROM职工;GROUPBY部门号WHERECOt5NT(木)>=3标准答案:C知识点解析:根据题意,本题应按照“部门号”分组,COUNT(*)>=3为限定分组的条件。在SQL语句中,分组使用GROUPBY子句,HAVING子句用来限定分组的条件。SUM()函数用来求和,COUNT()函数用来计数。下表是用list命令显示的“运动员”表的内容和结构,下列题使用该表。38、为“运动员"表增加一个字段“得分”的SQl语句是()。A、CHANGETABLE运动员ADD得分IB、ALTERDATA运动员ADD得分IC、ALTERTABLE运动员ADD得分ID、CHANGETABLE运动员INSERT得分I标准答案:C知识点解析:用SQL命令可以对基本表的结构进行修改,利用以下命令可以为表建立新的字段:AIXERTABLE<表名>ADD[[COLUMN][<字段名1×字段类型>[(<长度>[,<小数位数>])]本题中CREATETABLE命令用来新建一个表,要修改已存在的表的结构需要使用ALTERTABLE命令,另外,给表增加字段的短语是ADDCOLUMN,而不是ALTER,其中COLUMN短语可以省略,ALTER是用来修改已有的字段,不能新增一个字段。39、计算每名运动员的“得分”(33题增加的字段)的SQL语句正确的是()。A、UPDATE运动员FIELD得分=2*投中2分球+3*投中3分球+罚球B、UPDATE运动员FIELD得分WITH2*投中2分球3*投中3分球+罚球C、UPDATE运动员SET得分WITH2*投中2分球+3*投中3分球+罚球D、UPDATE运动员SET得分=2*投中2分球+3*投中3分球+罚球标准答案:D知识点解析:SQL的数据更新命令格式:UPDATE<表名>SET.列名1=表达式1[,列名2=表达式2…][WHERE<条件表达式>]一般使用WHERE子句指定条件,以更新满足条件的一些记录的字段值,并且一次可以更新多个字段:如果不使用WHERE子句,则更新全部记录。40、检索“投中3分球”小于等于5个的运动员中“得分”最高的运动员的“得分”,正确的SQL语句是()。A、SELECTMAX(得分)FROM运动员WHERE投中3分球<=5B、SELECTMAX(得分)FROM运动员+WHEN投中3分球<=5C、SELECT得分MAX(得分)FROM运动员WHERE投中3分球<=5D、SELECT得分MAX(得分)FROM运动员WHEN投中3分球<=5标准答案:A知识点解析:求最大值的函数是MAX(),使用计算函数后,会改变原来的用于计算的字段名,如果要指定新的字段名,可以在该计算函数后通过AS短语指定新的字段名,也可以省略AS短语直接输入新字段名做为输出显示的字段名称。本题选项C和D)中,使用计算函数的表达方式错误;而选项B中,条件短语的关键字出错,应该是WHERE,而不是WHEN。二、基本操作题(本题共1题,每题1.0分,共1分。)41、在考生文件夹下完成如下操作:(1)新建一个名为“图书管理”的项目。(2)在项目中建立一个名为“图书”的数据库。(3)将考生文件夹下的所有自由表添加到“图书”数据库中。(4)在项目中建立查询bookqu:查询价格大于等于10的图书(book表)的所有信息,查询结果按价格降序排序。标准答案:(1)在命令窗口执行命令:CREATEPROJECT图书管理,新建一个项目管理器。(2)在项目管理器中,选中“数据”选项卡内的誓数据库”项,然后单击“新建”按钮,在弹出的“新建数据库”对话框中单击“新建数据库”图标按钮,然后在弹出的“创建”对话框的“数据库名”框中输入“图书”,单击“保存”按钮新建一个数据库并打开数据设计器。(3)在数据库设计器中右击鼠标,选择[添加表]快捷菜单命令,在弹出的“打开”对话框中双击book表,将表添加到数据库中。以同样的方法将borrows表和loans表也添加到数据库中。(4)①在项目管理器中,选中“数据”选项卡内的“查询”项,然后单击“新建”按钮,在弹出的“新建查询”对话框中单击“新建查询”图标按钮,打开查询设计器,在“添加表或视图”对话框中,双击book表,将表添加到查询设计器中。②根据题目要求,在“字段”选项卡的“可用字段”中,将全部字段都添加到“选定字段”列表中。③在“筛选”选项卡内的“字段名”下拉列表框中选择“book.价格”,在“条件”下拉列表框中选择“>=”,在“实例”下拉列表框中输入:10。④在“排序依据”选项长内双击“选定字段”列表框中的“价格”,将其添加到“排序条件”列表框中,在“排序选项”中选择“降序”。⑤最后单击“常用”工具栏中的“运行”按钮查看结果,将查询文件以文件名bookqu保存到考生文件夹下。知识点解析:本大题考查了项目管理器建立和使用;在项目管理器中建立数据库和查询。三、简单应用题(本题共1题,每题1.0分,共1分。)42、(1)编写程序three.prg完成下列操作:根据“外汇汇率”表中的数据产生rate表中的数据。要求:将所有“外汇汇率”表中的数据插入rate表中并且顺序不变,由于“外汇汇率"中的“币种1”和“币种2”。存放的是外币名称,而rate表中的“币种1代码”和“币种2代码”应该存放外币代码,所以插入时要做相应的改动,“外币名称”与“外币代码”的对应关系存储在“外汇代码”表中。注意:程序必须执行一次,保证rate表中有正确的结果。(2)使用查询设计器建立一个查询文件four.qpr。查询要求:从外汇账户中查询“日元”和“欧元”的记录。查询结果包括了外币名称、钞汇标志、金额,结果按“外币名称"升序排序,在“外币名称”相同的情况下按“金额”降序排序,并将查询结果存储于表five.dbf中。标准答案:(1)步骤1:在命令窗口执行命令:MODIFY。COMMANDthree,打开程序文件编辑器。步骤2:在编辑器中输入如下程序代码(以下程序是通过查询设计器生成):SELECT外汇代码.外币代码AS币种1代码,;外汇代码a.外币代码AS币种2代码,外汇汇率.买入价,外汇汇率.卖出价:FROM外汇!外汇代码INNERJOIN外汇!外汇汇率:INNERJOIN外汇!外汇代码外汇代码a;ON外汇汇率.币种2一外汇代码a.外币名称;ON外汇代码.外币名称=外汇汇率.币种1;INTOARRAYarrlINSERTINTORATE.DBFFROMARRAYarrl步骤3:在命令窗口执行命令:DO,three.prg,执行程序文件。(2)步骤1:在命令窗口执行命令:OPENDATABASE外汇,打开数据库环境。步骤2:在命令窗口执行命令:CREATEQUERYfour,打开查询设计器,在“添加表或视图”对话框中,分别双击“外汇代码”表和“外汇账户”表,将表添加到查询设计器中。步骤3:添加两个表后,系统弹出“联接条件”对话框,自动查找两个表中相匹配的字段进行联接,单击“确定”按钮设置两个表的联系。步骤4:依次双击“外汇代码”表中的“外币名称”和“外汇账户”表中的“钞汇标志”、“金额”字段,添加到“字段”选项卡的“选定字段”列表中。步骤5:在“筛选”选项卡的“字段名”下拉列表中选择“外汇代码.外币名称”字段,在“条件”下拉框中选择“=”,在“实例”框中输入“日元”,在“逻辑?下拉框中选择“OR”;接着在第二行接着输入查询条件,在“字段名”下拉列表中选择“外汇代码.外币名称”字段。在“条件”下拉框中选择“=”,在“实例”框中输入“欧元”。步骤6;在“排序依据”选项卡内双击“选定字段”列表框中的“外汇代码-夕h币名称”字段,将字段添加到“排序条件”列表框中,在“排序选项”中选择“升序”单选项;以同样的方法再设置“外汇账户.金额”字段的降序。步骤7:执行[查询]→[查询去向]菜单命令,在弹出的“查询去向”对话框中单击“表”图标按钮,接着在“表名”中输入文件名“five”,单击“确定”按钮。步骤8:最后单击“常用”工具栏中的“运行”按钮查看结果,将查询文件保存到考生文件夹下。知识点解析:本题考查的是SQL超链接查询.设计SQL代码的关键是怎样建立“外汇代码”表中“外币代码”与“外汇汇率”表中“币种1”和“币种2”的联系。由于输出结果的“币种1”和“币种2”需要用相应的“外币代码”表示,“外汇代码”表中的“外币代码”只能利用一次,即替换“币种1”或“币种2”中的币种名称,这样没有被替换的币种仍然是中文币种名称,因此需要将“外汇代码”表利用两次,两个表中的“外币代码”分别替换“外汇汇率”表中“币种1”和“币种2”的中文币种名,被两次引用的表名要在原表名后再加“a”进行区分。三个表的联接条件分别是“外汇代码.外币名称:外汇汇率.币种1”和“外汇汇率.币种2=外汇代码一a.外币名称”.查询输出的字段名可以通过AS短语重新指定名称。另外,查询结果要求保存到数据库表,因此要将结果保存到数组中,然后再通过数组将记录插入到表中。四、综合应用题(本题共1题,每题1.0分,共1分。)43、在考生文件夹下,对“雇员管理”数据库完成如下综合应用:①建立一个名称为VIEW1的视图,查询每个雇员的部门号、部门名、雇员号、姓名、性别、年龄和EMAIL。②设计一个名称为form2的表单,表单上设计一个页框,页框(PageFramel)有“部门”(Pagel)和“雇员”(Page2)两个选项卡,在表单的右下角有一个“退出”命令按钮,如下图所示。要求如下:.表单的标题名称为“商品销售数据输入”。.单击选项卡“雇员”时,在选项卡“雇员”中使用“表格”方式显示view1视图

温馨提示

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

评论

0/150

提交评论