VFP笔试考点(2012.4).doc_第1页
VFP笔试考点(2012.4).doc_第2页
VFP笔试考点(2012.4).doc_第3页
VFP笔试考点(2012.4).doc_第4页
VFP笔试考点(2012.4).doc_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

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

文档简介

第1章 数据库理论基础1数据库概念:数据库(DB)、数据库管理系统(DBMS)、数据库系统(DBS)。 包括 啊 和 。数据库系统中对数据库进行管理的核心软件是 。2实体间的联系:一对一联系(1:1)、一对多联系(1:n)、多对一联系(n:1)和多对多联系(m:n)。例如,如果一个班只有一个班长,而且一个班长不能同时担任其它班的班长,班级和班长两个实体之间的联系是 。公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,职员与部门两个实体之间的联系是 ;部门与职员两个实体之间的联系是 。在奥运会游泳比赛中,一个游泳运动员可以参加多项比赛,一个游泳比赛项目可以有多个运动员参加,游泳运动员与游泳比赛项目两个实体之间的联系是 联系。例如,在超市营业过程中,每个时段要安排一个班组上岗值班,每个收款口要配备两名收款员配合工作,共同使用一套收款设备为顾客服务,在超市数据库中,实体之间属于一对一关系的是 。A顾客与收款口的关系 B收款口与收款员的关系C班组与收款口的关系 D收款口与设备的关系例如,为了把多对多的联系分解成两个一对多联系所建立的“纽带表”中,应该包含两个表的 。3数据模型:层次模型(树状结构)、网状模型和关系模型(用 结构来表示实体以及实体之间联系的模型)。VFP支持的数据模型是 。例如,最常用的一种基本数据模型是 ,它的表示应采用 。4关系数据系统的概念:数据表(也即是 )、记录(元组)、字段、字段类型、域、关键字( 可以唯一地确定一条记录的一个字段或多个字段的组合 ,不允许有 或 )、外部关键字。例如,在VFP中,关系数据库管理系统所管理的关系是 。A一个DBF文件 B若干个二维表 C一个DBC文件 D若干个DBC文件例如,设有表示学生选课的三张表,学生S(学号,姓名,性别,年龄,身份证号),课程C(课号,课名),选课SC(学号,课号,成绩),则表SC 的关键字(键或码)为 。A课号,成绩 B学号,成绩 C学号,课号 D学号,姓名,成绩例如,在关系模型中,每个关系模式中的关键字 。A可由多个任意属性组成 B最多由一个属性组成 C可由一个或多个其值能唯一标识关系中任何元组的属性组成 D以上说法都不对5关系的特点 关系必须规范化(关系的每个分量必须是一个不可分割的数据项,也就是说,不允许表中包含表)。 同一关系中不能出现相同的字段名(列),也不允许有完全相同的记录(行)。 在一个关系中记录的次序和字段的次序都无关紧要。6关系的运算 选择:从数据表中找出满足给定条件的记录(元组)的操作称为选择。选择运算是对数据表从 的方向上进行的运算,往往是通过条件短语FOR/WHILE(VFP命令中)、WHERE(SQL中)实现。 投影:从数据表中指定若干字段组成新的数据表的操作称为投影。投影运算是对数据表从 的方向上进行的运算,往往是通过短语FIELDS(VFP命令中)、SELECT(SQL中)实现。 联接:联接运算将两个数据表拼接成一个新的数据表,生成的新数据表中包含满足连接条件的记录。自然联接是去掉重复属性的等值联接。例如,从表中选择字段形成新关系的操作是 。例如,从表中选择满足条件的记录形成新关系的操作是 。例如,学生表中有学号、姓名和年龄三个字段,SQL语句“SELECT 学号 FROM 学生”完成的操作称为 ,SQL语句“SELECT * FROM 学生 WHERE 年龄 =20”完成的操作称为 。例如,下列关系模型中,能使经运算后得到的新关系中属性个数多于原来关系中属性个数的是 ,操作对象只能是一个表的关系运算是 。A选择 B联接 C投影 D并第2章 VFP环境简介及常用操作命令1常用文件扩展名及其关联的文件类型常用文件扩展名及其关联的文件类型扩展名文件类型扩展名文件类型.APPVisual FoxPro应用程序.QPR查询文件.EXE可执行应用程序.PRG源程序文件.PJX项目文件.FXP源程序编译后的文件.DBF数据表文件.VCX可视类库文件.FPT数据表备注文件.SCX表单文件.IDX数据表独立索引文件.MNX菜单文件.CDX数据表复合索引文件.MPR生成的菜单源程序文件.DBC数据库文件.FRX报表文件说明:视图不是一个文件,它没有扩展名。视图保存在当前打开的数据库中。2Visual FoxPro可视化工具(向导、设计器、生成器)l 向导:通过一系列的对话框向用户提示每一个操作步骤,引导用户步步完成各项任务。l 设计器:创建和修改各种组件的可视化工具。如表设计器、数据库设计器、查询设计器等。l 生成器:带有多个选项卡的对话框,用来创建、生成或修改某种控件。如选项卡生成器。例如,在VFP中修改数据库、表单、报表等对象的可视化工具是 。A向导 B设计器 C生成器 D项目管理器3条件短语1)在VFP命令中使用的条件短语:FOR 和 WHILE。 FOR :在指定范围内(缺省范围为ALL),逐条检查记录,符合条件的记录执行命令,不符合条件的跳过去。在命令如果使用了FOR 短语,不管该命令的缺省范围是什么,只要省略了缺省范围,则该命令的操作范围为ALL。List for 性别=男 1、3、4、6、8List while性别=男 3、4 WHILE :在指定记录范围内(缺省范围为REST),逐条检查,符合条件的记录执行命令。当遇到第一个不满足条件的记录,停止命令的执行。在命令如果使用了WHILE 短语,不管该命令的缺省范围是什么,只要省略了缺省范围,则该命令的操作范围为REST。另外,还有两个范围短语:NEXT N 和 RECORD N。2)在SQL中使用的条件短语:WHERE、ON 和 HAVING。 WHERE :即可用于非超联接查询时多表间的联接条件,也可用于多表查询(既可是非超联接查询,也可是超联接查询)中设置记录满足的条件。 ON :对多表进行超联接查询时,用于设置多表间的联接条件(此时不能用WHERE)。 HAVING :HAVING必须跟随GROUP BY之后使用,用于限定分组必须满足的条件。说明:WHERE子句作用于记录,而HAVING子句作用分组,可以使用WHERE子句的同时使用HAVING子句(但必须在GROUP BY分组子句之后使用)。4常用操作命令4.1.1 VFP命令建立数据表:CREATE & 打开表设计器创建表结构说明:1)在VFP的表文件中,日期型占 个字节,逻辑型占 个字节,备注型和通用型占 个字节。每条记录的总宽度比用户定义的各个字段宽度之和多 个字节,该字节用于存放 。自由表字段名最长为 个字符,数据库表字段名最长为 个字符。2)空值(.NULL.):空值不同于空字符串()、空格字符串( )、数值0,空值(.NULL.)就是 。3)如EMP表中有备注型或通用型字段(不管有多少个),在创建EMP表时,系统会自动创建与所属数据表的表名相同,扩展名为 的 个数据表备注文件。表备注文件名为 。例如,在一个VFP数据表文件中有2个通用字段和3个备注字段,该数据表的备注文件数目是 。4.1.2 SQL建立数据表:CREATE TABLE ;( (,) ;PRIMARY KEY CHECK ERROR ;DEFAULT , ; )常用数据类型说明字段类型对应字符及表示方法字段类型对应字符及表示方法字段类型对应字符及表示方法字符型C(n)数值型N(n,m)逻辑型L日期型D整型I注意:对自由表不能实现其完整性、有效性规则等信息的设置。例如,教师表中有职工号、姓名和工龄字段,其中职工号为主关键字,建立教师表的SQL命令是 。ACREATE TABLE 教师表(职工号 C(10) PRIMARY,姓名 C(20),工龄 I)BCREATE TABLE 教师表(职工号 C(10) POREING,姓名 C(20),工龄 I)CCREATE TABLE 教师表(职工号 C(10) POREING KEY,姓名 C(20),工龄 I)DCREATE TABLE 教师表(职工号 C(10) PRIMARY KEY,姓名 C(20),工龄 I)例如,在VFP中,使用SQL的CREATETABLE语句建立数据库表时,使用 子句说明主索引,使用 子句说明有效性规则(域完整性规则或字段取值范围)。4.2.1 VFP命令修改表结构:MODIFY STRUCTURE & 打开表设计器修改功能:修改数据表的结构,包括增加/删除字段,修改已有的字段(字段名、字段类型、宽度、有效性规则等),不能修改表中的数据。4.2.2 SQL修改表结构: TABLE 格式1:ALTER TABLE ADD & 同定义表结构一样ALTER TABLE ADD PRIMARY KEY | UNIQUE TAG 功能:修改数据表的结构,为表增加字段或和添加主索引或候选索引。例如,为学生.dbf增加年龄字段(整型,即不带小数位);为成绩.dbf增加成绩字段并设置有效性。ALTER TABLE 学生 年龄 ALTER TABLE 成绩 成绩 N(6,2) 成绩=0 AND 成绩=100例如,将学生表中的学号定义为主索引,索引名为xh。学号和姓名定义为候选索引,索引名xhxm。定义主索引: ALTER TABLE 学生 学号 TAG xh定义候选索引:ALTER TABLE 学生 学号+姓名 TAG xhxm格式2:ALTER TABLE ALTER (,)ALTER TABLE ALTER SET CHECK ERROR ALTER TABLE ALTER SET DEFAULT ALTER TABLE ALTER DROP CHECK | DROP DEFAULTALTER TABLE DROP PRIMARY KEY | DROP UNIQUE TAG | DROP 功能:修改数据表的结构,为其修改已有字段的类型、宽度;有效性规则(包括错误提示信息)、默认值;删除有效性规则和默认值;删除主索引、候选索引和字段。例如,ALTER TABLE 学生 & 将学生表中学号字段修改为字符型(8)例如,ALTER TABLE 成绩 ALTER 成绩 成绩=0 AND 成绩=100例如,为成绩表中定义的成绩字段的默认值改为0,正确的命令是 。AALTER TABLE 成绩 ALTER 成绩 SET DEFAULT 0BALTER TABLE 成绩 ALTER 成绩 DEFAULT 0CALTER TABLE 成绩 ALTER 成绩 SET DEFAULT 成绩=0DALTER TABLE 成绩 ALTER 成绩 DEFAULT 成绩=0注意:在定义表结构或为表增加字段时,设置有效性规则和默认值用 和 ;为表中已存在的字段增加/修改有效性规则和默认值时 和 。例如,ALTER TABLE 成绩 ALTER COLUMN 成绩 DROP CHECK & 删除成绩表中成绩字段的有效性规则例如,ALTER TABLE 成绩 ALTER COLUMN 成绩 DROP DEFAULT & 删除成绩表中成绩字段的默认值例如,将学生表的主索引和候选索引xhxm删除。删除主索引:ALTER TABLE 学生 ;删除候选索引:ALTER TABLE 学生 。例如,将学生表中的年龄字段删除,正确的SQL命令是ALTER TABLE 学生 。格式3:ALTER TABLE RENAME COLUMN TO 功能:修改数据表的结构,对指定的字段改名。例如,将成绩表中的成绩字段改为考试成绩,正确的SQL命令是 。4.3 SQL删除表命令格式:DROP TABLE 例如,在VFP中,删除数据库表S的SQL命令是 。4.4.1 VFP命令复制数据表结构。命令格式:COPY STRUCTURE TO FIELDS 4.4.2 SQL语句复制数据表结构。 SELECT * FROM INTO TABLE 例如,将学生.dbf的结构(不包含数据)复制到Student.dbf中。VFP命令:USE 学生 SQL语句:SELECT * FROM 学生INTO TABLE Student ;COPY STRUCTURE TO Student WHERE .F.4.5.1 VFP命令增加记录 & WHERE .F. 表示所有记录都不满足条件1)APPEND命令(表的尾部增加记录)。命令格式:APPEND BLANK2)INSERT命令(在表的当前记录前后位置插入新的记录)。命令格式:INSERT BEFOREBLANK如使用BLANK短语插入空白记录,可使用REPLACE命令直接修改该空记录值。4.5.2 SQL增加记录命令格式:INSERT INTO (,) VALUES(,)注意:1)表定义时说明了PRIMARY KEY(关键字)的字段不能取空值和重复值,且必须为该字段赋值。 2)表达式的值的类型应与对应的字段数据类型一致。例如,向学生表中插入一条记录,正确的命令是 。 CREATE TABLE 学生(学号 C(4) PRIMARY KEY,; 姓名 C(8),专业 C(8),; 年龄 I CHECK 年龄=15 AND 年龄=20)AINSERT INTO 学生 VALUES(1234,张涛,计算机,18)BINSERT INTO 学生 VALUES(1234,张涛,计算机,25)CINSERT INTO 学生(姓名,专业,年龄) VALUES(张涛,计算机,25)DINSERT INTO 学生(学号,姓名,年龄) VALUES(1234,张涛,18)4.6.1 VFP命令删除记录(在VFP中删除记录有逻辑删除和物理删除两种)命令格式1:DELETE 范围FOR 命令格式2:PACK 命令格式3:ZAP逻辑删除物理删除ZAP 等价于 DELETE ALL 和 PACK两条命令。取消记录上的删除标记 命令格式:RECALL 范围FOR 例如,彻底删除当前表中所有记录的命令是 。ADELETE ALL BPACK CRECALL ALL DZAP4.6.2 SQL删除记录命令格式: FROM WHERE 例如,不带条件的SQL DELETE命令将删除指定表的 记录。例如,使用SQL从图书表中删除总编号以字母A开头的记录,应使用命令: 图书 WHERE 总编号 LIKE A%说明:此例中的条件运算符只能用LIKE,而不能用 = 。如使用 = ,则表示删除总编号等于A%的记录(此时%就是一个普通字符,因为%只有在SQL的条件使用LIKE时才作为代表任意多个字符的通配符)。如使用VFP命令删除: DELETE FOR 总编号=A 或 DELETE FOR LEFT(总编号,1)=A 说明:此处的运算符只能用=,而不能用 LIKE 。运算符LIKE只能用在SQL命令的条件短语中。说明: 和 1 命令功能相同。4.7.1 VFP命令修改记录:1)用CHANGE和EDIT命令交互式逐条修改(打开编辑窗口修改,略)。 2)用REPLACE命令成批修改。命令格式:REPLACE 范围 WITH FOR 说明:范围缺省时只修改当前一条记录。例如,为当前表中所有学生的总分增加10分,可以使用的命令是 。ACHANGE 总分 WITH 总分+10 BREPLACE 总分 WITH 总分+10CCHANGE ALL 总分 WITH 总分+10 DREPLACE ALL 总分 WITH 总分+10此题答案也可表示为:REPLACE 总分 WITH 总分+10 FOR .T.说明:使用FOR 短语,不管命令的缺省范围是什么,其操作范围都变成全部(ALL)。在VFP的命令(DELETE、REPLACE)中,如果没有条件短语,表示删除或修改当前记录(记录指针指向的记录),而在SQL语句(DELETE、UPDATE)中,如果没有条件短语,表示删除或修改全部(所有)记录。4.7.2 SQL修改记录命令格式: ; = ;WHERE 说明:使用SQL操作数据表(插入数据、更新数据、删除数据)时不需要先执行USE 表名 命令打开表,而使用VFP命令操作表时则需要先打开相应的表再操作。VFP命令和SQL删除表记录都只能逻辑删除,如要物理删除,还需执行PACK命令。4.8.1 创建视图的SQL语句命令格式:CREATE VIEW AS ;例如,CREATE VIEW view_stock AS SELECT 股票名称 AS 名称,单价 FROM stock执行该语句后产生的视图含有的字段名是 。A股票名称、单价 B名称、单价C名称、单价、交易所 D股票名称、单价、交易所4.8.2 删除视图的SQL语句命令格式:DROP VIEW 例如,删除视图 myview 的命令是 。4.9 建立各类文件的命令:建立项目的命令:CREATE PROJECT 项目文件名建立数据库命令:CREATE DATABASE 数据库文件名建立查询的命令:CREATE QUERY 查询文件名建立视图的命令:CREATE VIEW 视图文件名建立程序/打开的命令:MODIFY COMMAND 程序文件名建立表单的命令:CREATE FORM 表单文件名建立菜单的命令:CREATE MENU 菜单文件名建立报表的命令:CREATE REPORT 报表文件名4.10 打开各类文件的命令:打开数据表的命令:USE 表文件名 打开数据库的命令:OPEN DATABASE 数据库文件名 参数含义EXCLUSIVE:以独占方式打开数据表或数据库。SHARED: 以共享方式打开数据表或数据库。打开项目的命令:MODIFY PROJECT 项目文件名打开查询的命令:MODIFY QUERY 查询文件名打开视图的命令:MODIFY VIEW 视图文件名打开表单的命令:MODIFY FORM 表单文件名打开菜单的命令:MODIFY MENU 查询文件名打开报表的命令:MODIFY REPORT 报表文件名例如,执行以下一组命令:SET EXCLUSIVE OFF USE js USE xs EXCLUSIVE IN 0则js表打开方式是 ,xs表的打开方式是 。数据库表与自由表之间可以相互转换。但一个数据表只能属于一个数据库。4.11 自由表和数据库表转换命令(命令操作前,先打开相应的数据库):向数据库中添加自由表的命令格式:ADD TABLE 从数据库中移去数据库表的命令格式:REMOVE TABLE 4.12 执行各类文件的命令:查询文件:DO 查询文件名 (必须带扩展名.qpr,如DO Myquery.qpr)菜单文件:DO 菜单文件名 (必须带扩展名.mpr,如DO Mymenu.mpr)程序文件:DO 程序文件名 (如不带扩展名,则按.EXE(可执行文件).APP(VFP应用程序).FXP(已编译的程序).PRG(源程序),如DO Myprog.prg)表单文件:DO FORM 表单文件名 (可省略扩展名.scx) 报表文件:REPORT FORM 报表文件名 PREVIEW (可省略扩展名.frx)说明:不使用PREVIEW在主窗口显示报表,使用PREVIEW在预览窗口中显示报表。4.13 其它命令:SET MARK TO 日期分隔符 & 分隔符有(/)、(-)、(.)和空格四种设置日期SET DATE TO YMD|MDY|DMY & 设置日期显示格式SET CENTURY ON|OFF & 设置是否显示世纪值当需显示的日期年份年份参考值时,显示日期的年份前两位为世纪值+1;当需显示的日期年份年份参考值时,显示日期的年份前两位为世纪值。SET CENTURY TO ROLLOVER 例如,依次执行以下命令后输出的结果是 。SET MARK TO .SET DATE TO YMDSET CENTURY ONSET CENTURY TO 19 ROLLOVER 10?CTOD(09-05-01) (结果:2009.05.01)?CTOD(49-05-01) (结果:1949.05.01)例如,想要将日期型或日期时间型数据中的年份用4位数字显示,应当使用设置命令 。ASETCENTURYONBSETCENTURYOFF CSETCENTURYTO4DSETCENTURYOF4设置字符排序序列:SET COLLATE TO 说明:排序次序名必须放在引号当中。排序次序名有“Machine”、“PinYin”和“Sroke”。 Machine(机器)次序:按照机内码顺序排列。西文字符是按照ASCII码值排列(大写ABCD字母序列在小写abcd字母序列的前面)。汉字根据它们的拼音顺序决定大小。 空格 A B Z a b z PinYin(拼音)次序:按照拼音次序排列。对于西文字符而言,小写abcd字母序列在前,大写ABCD字母序列在后,同一字母,大写大,小写小。(默认排序方式) 空格 a A b B z Z Stroke(笔画)次序:无论中文、西文,按照书写笔画的多少排序。5项目管理器1)项目管理器的组成l “数据”选项卡:用于显示和管理 、 、 和 。l “文档”选项卡:用于显示和管理 、 和 。l “代码”选项卡:用于显示和管理 。l “其他”选项卡:用于显示和管理 和 。例如,在“项目管理器”窗口中可以完成的操作是 。A新建文件 B添加/删除文件 C修改文件 D以上操作均可以说明:在VFP中,新建或添加一个文件到项目中并不意味着把该文件合并到项目文件中。事实上,每一个文件仍然以独立文件的形式存在,只是表示该文件与项目建立了一种关联。2)项目连编:项目连编结果有三种文件形式:l 应用程序文件(.app):需要在Visual FoxPro中运行。l 可执行文件(.exe):可以直接在Windows下运行。l 动态链接库库文件(.dll)。例如,在连编对话框中,下列不能生成的文件类型是 。ADLL BAPP CPRG DEXE如果标识为“包含”,表示该文件是只读文件,不能再修改。如果标识为“排除”,表示该文件是可以修改的。但是这些文件没有在应用程序的文件中编译。 例如,如果添加到项目中的文件标识为“排除”,表示 。A此类文件不是应用程序的一部分B生成应用程序时不包括此类文件C生成应用程序时包括此类文件,用户可以修改D生成应用程序时包括此类文件,用户不能修改例如,在连编项目文件之前应在“项目管理器”中指定一个主文件,该主文件将作为已编译的应用程序执行的开始点。可以作为主文件的可以是 、 、 、 。第3章 Visual Foxpro语言基础1常量:字符型(C)、数值型(N)、货币型(Y)、逻辑型(L)、日期型(D)和日期时间型(T)。字符型常量:也称字符串,字符型常量的定界符不作为常量本身的内容。字符型常量的定界符必须成对匹配,不能一边用一种定界符而另一边用另外一种定界符。定界符有、三种。例如,下列字符型常量的表示中,错误的是 。A.5+3 B.品牌 C.x=y D.计算机例如,X=2001-07-28 10:15:20PMY=.F. M=5123.45 执行左述赋值语句之后,内存变量X,Y,M,N和Z的数据类型分别是 。N=$123.45 AD、L、Y、N、C BT、L、N、Y、CZ=123.24 CT、L、N、M、C DT、L、Y、N、S日期型常量:yyyy-mm-dd,如2012年4月15日应表示为 。执行命令A=2012/4/15之后,内存变量A的数据类型是 ,表达式score=0的数据类型是 ,表达式100+100=300的数据类型是 ,表达式505-50的数据类型是 。2变量:内存常量(包括数组)、字段变量使用=一次只能给一个内存变量赋值(=不能给字段变量赋值),而STORE命令可以同时给多个内存变量赋予相同的值(不能给字段变量赋值)。字段变量可通过REPLACE命令赋值或修改已有的值。注意,内存变量也具有常量的6种数据类型,字段变量除此之外,还有 备注型、通用型 等。例如,以下赋值语句正确的是 。ASTORE 8 TO X,Y BSTORE 8,9 TO X,Y & 不能给多个变量赋不同的值CX=8,Y=9 & 一行只能写一条命令 DX,Y=9 & 语法错误例如:x=13 x=13 y=1x y=1x=24 ?x,y (显示结果:3 3) ?x,y (显示结果:3 .F.)说明:=有两个作用,一是作为赋值命令,如上述例题中=1;二是关系运算符,如上述例题中=2。M=科目+考试?m (显示结果:计算机 考试)例如,假设当前表当前记录的科目字段值为计算机(C型字段,字段宽度为8),在命令窗口输入如下命令将显示结果 。M=科目-考试?m (显示结果:计算机考试)姓名1是内存变量,姓名2和姓名3都是字段变量。修改字段变量的值使用:REPLACE和UPDATE命令。例如,假设职员表已在当前工作区打开,其当前记录的姓名字段值为李彤(C型字段)。在命令窗口输入并执行如下命令:姓名1=姓名2-出勤?姓名3 (显示结果:李彤)?M.姓名1 (显示结果:李彤出勤)注意:内存变量和字段变量在同名的情况下,直接引用变量名时使用的是字段变量,要引用内存变量,需在变量名前加M.或M-。例如,如果内存变量和字段变量均有变量名姓名,那么引用内存变量的正确方法是 。AM.姓名 BM-姓名 C姓名 DA和B都可以当给一个变量多次赋值后,变量中保存的是最后一次命令给其所赋的值。其数据类型取决于它的值。例如:ACCETP TO A IF A=123 S=0 ENDIF S=1 ?S (执行结果: )变量名(不管是字段变量还是内存变量)在表示时不能使用定界符,否则视为字符型常量。例如,查询学生选修课程成绩小于60分的学号,正确的SQL语句是 。通配符包括?和*,?表示任意一个字符,*表示任意多个字符。ASELECT DISTINCT 学号 FROM SC WHERE 成绩60BSELECT DISTINCT 学号 FROM SC WHERE 成绩60CSELECT DISTINCT 学号 FROM SC WHERE 成绩60DSELECT DISTINCT 学号 FROM SC WHERE 成绩60内存变量的显示命令格式:LIST|DISPLAY MEMORY LIKE 例如,语句LIST MEMORY LIKE a* 能够显示的变量不包括 。Aa Ba1 Cab2 Dba3例如,清除内存中第一个字母为A的内存变量,应使用命令: 。3数组:数组是按一定顺序排列的一组内存变量。1)VFP只支持一维数组和二维数组,数组下标的下界为 。一维数组的元素个数为 ,二维数组的元素个数为 。2) 用命令声明数组后,数组各元素的值都为 ,只有通过赋值命令对其赋值后才能确定其数据类型,因此同一数组中各元素可以赋 的值。例如,使用命令DECLARE mm(2,3)定义的数组,包含的数组元素(下标)的个数是 ,在命令窗口中输入?mm(1,1)的结果为 。例如,DIME s(2,2),S(1,1)=2,S(1,2)=4,S(2,1)=6,?S(3)的结果为 。?S(4)的结果为 。说明:二维数组按照先行后列的顺序存储,二维数组可以通过一维数组访问。例如,下面关于VFP数组的叙述中,错误的是 。 A用DIMENSION和DECLARE都可以定义数组BVFP只支持一维数组和二维数组C一个数组中各个元素必须是同一种数据类型D新定义的数组的各个数组元素初值为.F.当两个字符串用“+”连接时,结果:两个字符串直接拼在一起;当两个字符串用“-”连接时,结果:先把两个字符串拼在一起,然后把第一个字符串末尾的空格移到结果最后。只有当第一个字符串末尾没有空格时,用“+”连接和用“-”连接结果才一样。例如,下列程序段执行时在屏幕上显示的结果是 。DIME a(6)STORE 1 TO a(1),a(2)FOR i=3 TO 6 a(i)=a(i-1)+a(i-2)ENDFOR?a(6)A2 B3 C5 D84表达式1)字符表达式:字符串表达式运算符有以下两个:+ 和 - 。 (此处用口代表空格)例如,X=口中文口Visual口Y=口FoxPro口?X+Y (结果:口中文口Visual口口FoxPro口)?X-Y (结果:口中文口Visual口FoxPro口口)2)数值表达式:数值表达式运算符有:*或(乘方)、*、/、%(乘、除、求余)和+、-。例如:?13%3,13%-3,-13%3,-13%-3 (执行结果: ) & %作用等同于MOD()函数说明:余数=被除数-除数*商 & 商=FLOOR(数值表达式1/数值表达式2)。例如,设A=6*8-2,B=6*8-2,C=6*8-2,属于合法表达式的是 。AA+B BB+C CA-C DC-B例如,设x=123,y=123,k=y,表达式x+&k的值是 。A123123 B246 C123y D数据类型不匹配3)日期时间表达式:日期时间表达式的运算符:+ 和 - 。例如:?2009-02-14+30,2009-02-14-30,2009-02-14-2008-11-18结果: , , ?2009-02-14 10:15:20 AM+100,2009-02-14 10:15:20 AM-2009-02-14 10:10:20 AM 注意:两个日期型(日期时间型)数据不同相加。如 2009-02-14+DATE() 是错误的。4)关系表达式:关系表达式的运算符:、=、=、#、!=、=、=和$。子串包含测试: $ ,如果前者是后者的一个子字符串(与位置无关),结果为逻辑真(.T.),否则为逻辑假(.F.)。例如,计算机$计算机中心和中心$计算机中心的结果都为.T.,abd$abcd的结果为.F.。在用单等号运算符(=)比较两个字符串时,运算结果与SET EXACT ON|OFF命令设置有关。当处于OFF状态(默认状态)时,只要右边的字符串与左边的字符串前面部分相匹配,结果为逻辑真.T.(如:abc=a .T. ,而abc=bc .F.);当处于ON状态时,则只有左右两个字符串完全一样才为.T.。恒等于运算符(=)比较两个字符串时,不受SET EXACT ON|OFF命令影响,即只有左右两个字符串完全一样结果才为.T.,否则结果为.F.。(如:abc=abc .T. ,而abc=ab .F.)5)逻辑表达式:逻辑运算符有三个:.NOT.或!、.AND.和.OR.,其优先顺序依次为:NOT、AND、OR。例如,教师表T(教师号,姓名,性别(C,2),职称,研究生导师(L)中,若要查询“是研究生导师的女老师”信息,那么SQL语句“SELECT*FROMTWHERE”中的应是 。A研究生导师 AND 性别=女 B研究生导师 OR 性别=女C性别=女 AND 研究生导师=.F. D研究生导师=.T. OR 性别=女例如,假设字符串X=234,Y=345,则下列表达式的运算结果为逻辑假的是 。A.NOT.(X=Y).OR.Y$(12345) B.NOT.X$(XYZ).AND.(XY)C.NOT.(XY) D.NOT.(X=Y)此处X没有定界符,是一个变量,其值为234,如此处不是X,而是X,B答案的结果又是? 。例如,查询单价在600元以上的主机板和硬盘的正确命令是 。ASELECT * FROM 产品 WHERE 单价600 AND (名称=主机板 AND 名称=硬盘)BSELECT * FROM 产品 WHERE 单价600 AND (名称=主机板 OR 名称=硬盘)CSELECT * FROM 产品 FOR 单价600 AND (名称=主机板 AND 名称=硬盘)DSELECT * FROM 产品 FOR 单价600 AND (名称=主机板 OR 名称=硬盘)4常用内部函数1)字符函数:LEN()、AT()、LEFT()、RIGHT()、SUBSTR()、STUFF()、LIKE() ?LEN(SPACE(3)-SPACE(2)的结果是 。 ?AT(c,abcde),AT(f,abcde),AT(ac,abcde) 结果: , , 有如下的赋值语句,结果为大家好的表达式是 。 a=你好 Ab+AT(a,1) Bb+RIGHT(a,1) b=大家 Cb+LEFT(A,3,4) Db+RIGHT(a,2) ANS=STUDENT.DBF?SUBST

温馨提示

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

评论

0/150

提交评论