VFP复习讲义2.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《VFP复习讲义2.ppt》由用户(hwpkd79526)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VFP 复习 讲义
- 资源描述:
-
1、VFP讲稿讲稿第第34章章20122012表的概念表的概念v表是表是相关数据相关数据的集合,的集合,按照一定的组织形式按照一定的组织形式,以,以DBF为扩展名的文为扩展名的文件保存,件保存,FPT(表备注文件表备注文件)v组成:表结构和记录组成:表结构和记录v分类:自由表和数据库表分类:自由表和数据库表v字段的基本属性字段的基本属性(字段名、数据类型、宽度、小数位数和空值支持);(字段名、数据类型、宽度、小数位数和空值支持);命名规则命名规则:可以包含:可以包含字母、数字和下划线、汉字字母、数字和下划线、汉字;不以数字开头不以数字开头;长度为长度为1128(自由表字段名自由表字段名以及以及索引
2、标志名索引标志名长度只能为长度只能为10)数据类型:数据类型:宽度固定的数据类型的名字(宽度固定的数据类型的名字(8:D,T,B,Y 4:M,G,I 1:L =254:C)小数位数:小数位数:包含在总宽度中包含在总宽度中,同时还要注意,同时还要注意总宽度中还包含小数总宽度中还包含小数点一位点一位空值:表示值不确定;空值可以等价于任何一种数据类型空值:表示值不确定;空值可以等价于任何一种数据类型 CTRL+0(表的字段中空值的输入)(表的字段中空值的输入)表结构的创建和修改表结构的创建和修改v 创建表的结构创建表的结构 create table|dbf xs(xh c(9),xm c(8)NUL
3、L,csrq d(8)not null)创建自由表和数据库表创建自由表和数据库表 create cursor xs(xh c(9),xm c(8)NULL,csrq d not null)创建创建临时表临时表v 修改表的结构修改表的结构 ALTER TABLE XS ADD|RENAME|DROP COLUMN BJ C(2)|BJ TO BJBH|BJBHv 修改字段的类型和宽度修改字段的类型和宽度 ALTER TABLE XS ALTER COLUMN BJBH N(5,0)注意:对于数值型字段,必须指定小数位数,哪怕位数为注意:对于数值型字段,必须指定小数位数,哪怕位数为0表的基本操作表
4、的基本操作v 追加追加 APPEND BLANK(可在程序代码中或命令窗口中使用可在程序代码中或命令窗口中使用)追加一条记追加一条记录录 CTRL+Y 只能在浏览窗口中使用只能在浏览窗口中使用 追加一条记录追加一条记录 append from 表名表名 for 条件条件 追加多条记录追加多条记录(以同名字段填充以同名字段填充)insert blank(before)(VFP命令命令)事先应将表打开)事先应将表打开 insert into xs(xm,xh,xb)values(“”,”,”)(SQL命令命令)如果该)如果该表未打开,则会自动打开该表表未打开,则会自动打开该表 如果省略字段名列表,
5、则如果省略字段名列表,则values后面提供的值必须按照表中字段的先后顺序给后面提供的值必须按照表中字段的先后顺序给出出 如果给出字段列表,则如果给出字段列表,则values后面提供的值应按照字段列表的顺序给出后面提供的值应按照字段列表的顺序给出v 浏览浏览 browse for/while display(分屏显示分屏显示)/list FOR:所有满足条件的记录:所有满足条件的记录 WHILE:当遇到第一个不满足条件记录则停止命令的执行:当遇到第一个不满足条件记录则停止命令的执行表的基本操作表的基本操作v 定位定位v 相对定位相对定位 skip (正数正数|负数负数)当前记录号为)当前记录号
6、为9 SKIP-3v 绝对定位绝对定位 go(goto)N top botton 定位到记录号为定位到记录号为N的记录的记录v 条件定位条件定位 locate for 条件条件 (从(从第一条第一条记录开始搜索,记录开始搜索,定位在第一个定位在第一个满足条件的记录上满足条件的记录上)v continue (定位到下一个满足条件的记录)(定位到下一个满足条件的记录)v 记录指针记录指针 bof()eof()recno()(记录号的变化范围:(记录号的变化范围:1n+1)v 空表空表 .t.t.1 表的最大记录号:当前记录总数表的最大记录号:当前记录总数+1v 非空表非空表 .f.f.1v 记录指
7、针指向记录指针指向BOF时,记录号为时,记录号为1v 记录指针指向记录指针指向EOF时,记录号为时,记录号为N+1表的基本操作表的基本操作v 修改字段的值(更新记录)修改字段的值(更新记录)v replace 字段名字段名1 with 表达式表达式1,字段名字段名2 with 表达式表达式2 for 条件条件|范围范围子句子句 vfp命令命令 replace xb with“男男”,csrq with date()FOR 条件:条件:替换多个字段替换多个字段 replace ALL xb with iif(xb=1,”女女”,“男男”)REPLACE 默认只默认只对当前记录进行处理对当前记录进
8、行处理v 根据条件对同一个字段做不同的替换:根据条件对同一个字段做不同的替换:replace all jbgz with iif(zc=”教授教授”,jbgz+400,iif(zc=”副教副教授授”,jbgz+300,iif(zc=”讲师讲师”,jbgz+200,jbgz)v 范围子句:范围子句:ALL:所有记录:所有记录 NEXT N:从当前记录开始的:从当前记录开始的N条记录条记录 REST:从当前记录开始,一直到记录的结束:从当前记录开始,一直到记录的结束 RECORDE N:记:记录号为录号为N的记录的记录v update from 表文件名表文件名 set 字段名字段名=表达式表达式
9、 where 条件条件 SQL命令命令表的基本操作表的基本操作v 删除删除v 逻辑删除逻辑删除 delete all for 条件条件 delete from 表文件名表文件名 where 条件条件 SQL命令命令v 控制对带删除标记记录的访问控制对带删除标记记录的访问:set deleted ON|OFF 带删除标记的带删除标记的记录记录不能不能|可以可以访问访问 reccount():set dele on 对该函数不起作用,它统计的时文件中对该函数不起作用,它统计的时文件中没有没有被彻底删除的记录的总条数被彻底删除的记录的总条数v 物理删除(彻底删除)物理删除(彻底删除)pack:把带有
10、删除标记的记录彻底删除:把带有删除标记的记录彻底删除 zap:将所有记录彻底删除,仅保留表结构:将所有记录彻底删除,仅保留表结构 以上两条命令,要求表以以上两条命令,要求表以独占方式独占方式打开打开v 恢复记录(去掉删除标记)恢复记录(去掉删除标记)recall 范围子句范围子句|for 条件条件:该命令如果不加范围和条件,则只恢该命令如果不加范围和条件,则只恢复当前记录(复当前记录(display|delete|replace)deleted():判断当前记录是否带有删除标记判断当前记录是否带有删除标记表的基本操作表的基本操作v 筛选筛选v 记录的筛选:记录的筛选:临时筛选:在普通命令后加临
11、时筛选:在普通命令后加 for/while 条件条件 长期性筛选:长期性筛选:set filter to 条件条件v 字段的筛选:字段的筛选:browse fields 字段列表字段列表 set fields to 字段列表字段列表表的基本操作表的基本操作v 打开表:打开表:use 表名表名 ;Use 表名表名 again 在不同工作区打开同一张表在不同工作区打开同一张表v 关闭表:关闭表:use;close table;close all;close database(如果当前没有打开(如果当前没有打开数据库,则该命令将关闭所有的表)数据库,则该命令将关闭所有的表)v 工作区:内存中的一片区
12、域;在一个工作区中同一个时间只能打开一工作区:内存中的一片区域;在一个工作区中同一个时间只能打开一张表张表 select()工作区工作区编号编号:任意无符号整数;前:任意无符号整数;前10个工作区可用个工作区可用AJ来来表示表示 alias()工作区工作区别名别名:默认表名:默认表名,当区号大于当区号大于10且该表是重复打开,且该表是重复打开,则别名为则别名为W+区号区号v 对非当前工作区的表进行操作:对非当前工作区的表进行操作:改变当前工作区:用改变当前工作区:用SELECT 工作区号工作区号/别名别名 强行指定工作区:在命令中用强行指定工作区:在命令中用IN 工作区号工作区号|别名别名 s
13、elect 0 :0表示当前未被使用的且编号最小的工作区表示当前未被使用的且编号最小的工作区 close tables|all:执行该命令后,系统将:执行该命令后,系统将1号工作区置为当前工作区号工作区置为当前工作区 use xs in 0:打开打开XS表,表,该命令不改变当前工作区该命令不改变当前工作区 、use in xs:关闭别名为:关闭别名为XS的工作区中的表的工作区中的表 use techer alias xs ;go top in xs表的索引表的索引v 索引文件的结构:索引文件的结构:索引序号索引序号+表的记录号表的记录号v 索引的类型:索引的类型:主索引:主索引:适用于数据库表
14、的结构复合索引适用于数据库表的结构复合索引。一张表只有一个一张表只有一个,关关键字段的值唯一键字段的值唯一 候选索引(候选索引(candidate):关键字段的值唯一):关键字段的值唯一 普通索引:普通索引:唯一索引唯一索引(unique):记录中出现了重复值,则只有第一个有效:记录中出现了重复值,则只有第一个有效v 索引文件的类型:索引文件的类型:独立索引独立索引文件:文件:idx,文件中只能包含一个索引标志,文件中只能包含一个索引标志 复合索引复合索引文件:文件:cdx,文件中可以包含多个索引标志,文件中可以包含多个索引标志 结构复合结构复合索引:索引文件名与表文件名同名,索引文件随表文件
15、的打开而自索引:索引文件名与表文件名同名,索引文件随表文件的打开而自动打开动打开 非结构非结构复合索引:复合索引:注意:项目管理器不能管理独立索引和复合索引注意:项目管理器不能管理独立索引和复合索引表的索引表的索引v 建立索引建立索引 index on 关键字表达式关键字表达式 tag 索引标志名索引标志名 candidate|unique FOR 条件条件v 多个字段建立索引表达式多个字段建立索引表达式应该注意:应该注意:1.多个多个字符型的字段字符型的字段其先后顺序,影响索引结果:其先后顺序,影响索引结果:xm+xb 和和 xb+xm2.多个多个数值型字段数值型字段按表达式的按表达式的和值
16、和值进行排序进行排序 jbgz+gl 合理的排序合理的排序:str(jbgz,7,2)+str(gl)3.多个多个数据类型不相同的字段数据类型不相同的字段建立表达式,必须先建立表达式,必须先统一类型统一类型v 主控索引主控索引:正在起作用的索引标志;注意和主索引的区别。:正在起作用的索引标志;注意和主索引的区别。设定主控索引:设定主控索引:1打开表的同时指定主控索引打开表的同时指定主控索引 use xs order xh 2打开表之后指定主控索引打开表之后指定主控索引 set order to 索引标识名索引标识名表的索引表的索引v 索引标识的删除索引标识的删除 delete tag 索引标识
17、名索引标识名v 索引的修改:使用索引的修改:使用INDEX命令重建索引命令重建索引v 根据根据索引定位记录索引定位记录 seek 表达式表达式 :set order to xh;seek“990101”v 要求:要求:1 需要对表达式字段建立索引并设置为主控索引需要对表达式字段建立索引并设置为主控索引 2 结果指向结果指向第一个满足条件的记录第一个满足条件的记录或或记录结束标识(记录结束标识(没有找到相关没有找到相关记录记录)v 对定位结果的判断:对定位结果的判断:found().t.说明已经找到说明已经找到 .f.表示没有找到相关记录表示没有找到相关记录 Eof().f.说明已经找到说明已经
18、找到 .t.表示没有找到相关记录表示没有找到相关记录v seek(表达式表达式):v 要求:需要对表达式字段建立索引并设置为主控索引要求:需要对表达式字段建立索引并设置为主控索引 结果返回逻辑值结果返回逻辑值,找到:,找到:.t.;没找到:;没找到:.f.等价于:等价于:seek命令命令+found()函数函数独占与共享独占与共享v 表的共享访问:表的共享访问:独占(独占(exclusive)/共享共享(share)v 设置默认打开方式设置默认打开方式 set exclusive on|off (独占独占|共享共享)此设置仅对此设置仅对之后打开的表之后打开的表起作用,不影响已打开的表的状态起作
19、用,不影响已打开的表的状态v 强行以某种方式打开强行以某种方式打开 use xs share|exclusive 如果一张表已经打开了,则再次打开时仍按照上一次打开的如果一张表已经打开了,则再次打开时仍按照上一次打开的方式打开,此命令中的指定无效。方式打开,此命令中的指定无效。只能以独占方式打开表的有关操作只能以独占方式打开表的有关操作:modi structure;index;insert;pack;zap;reindex同步练习同步练习v若若VFP的命令中同时含有子句的命令中同时含有子句FOR、WHILE和和SCOPE(范围子句范围子句)。则三个子句执行时的优先级顺序为则三个子句执行时的优
20、先级顺序为_。AFOR、WHILE、SCOPEBWHILE、SCOPE、FORCSCOPE、WHILE、FORD无优先级、按句子出现的先后顺序执行无优先级、按句子出现的先后顺序执行v删除当前表中全部记录的命令是删除当前表中全部记录的命令是_。AERASE*.*BDELETE*.*CZAPDCLEAR ALLv下列关于表的索引的描述中,错误的是下列关于表的索引的描述中,错误的是_。A复合索引文件的扩展名为复合索引文件的扩展名为.CDXB结构复合索引文件随表的打开自动打开结构复合索引文件随表的打开自动打开C当对表进行编辑修改时,系统对其结构复合索引文件中的所用索当对表进行编辑修改时,系统对其结构复
展开阅读全文