程序设计基础(vfp)第三章数据库表2.pptVIP

程序设计基础(vfp)第三章数据库表2.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
山东师范大学 马先 第三章 数据库和数据表的操作 第二部分 3.4 索引文件及其应用 数据表中的顺序是按输入的顺序存储在表中。 如果查找某条记录怎么办? 3.4.1 索引文件及分类 1. 索引文件 索引文件:它仅由两个字段组成,一个字段是排序的关键字值(也可以是一个表达式),另一个字段是每个关键字在原始数据表中对应的记录号。例,在Rsda.dbf数据表中,以编号为关键字段并按升序建立的索引文件的示意图如下图所示。 在索引文件中,记录是按索引关键字值的顺序排列的,当要查找某一编号的记录时,VFP先在索引文件中查找该编号,找到后再根据对应的记录号,在数据表中将记录指针快速移动到该记录上。 一个索引文件中可以只有一个索引,也可以有多个索引。可以包含多个索引的索引文件称该文件为复合索引文件。在复合索引文件中,需要为每个索引指定一个索引标识名,以便于通过索引标识相互区分各个索引。 3.4.1 索引文件及分类 2. 索引的类型 (1)主索引 主索引通常是数据表的关键字索引,作为主索引的字段称为主关键字。主索引不能用在自由表中,而只能用在数据库表中,可用于在永久关系中建立参照完整性。创建主索引的字段不允许有重复值,且一个表只能有一个主索引。 例如,在数据表中,常用学生证号、身份证号、工作证号等作为主索引,而姓名可能有同名的情况,一般不能作为主索引。 3.4.1 索引文件及分类 (2)候选索引 候选索引类似于主索引,其索引值就不能有重复值。与主索引不同的是,一个数据表中可以有多个候选索引,而且侯选索引不能用来在永久关系中建立参照完整性。 (3)惟一索引 惟一索引表示索引值只能取一个,如果有两个或两个以上的索引值,则只能取其中一个,因此,惟一索引使用时可能会隐藏一些记录。例如,若有两个同名的人员,将姓名字段作为惟一索引,则只能找到一个记录,另一个记录将不会找到。 3.4.1 索引文件及分类 (4)普通索引 普通索引没有上面各索引的限制,是允许重复索引值的索引。作为普通索引的字段,其字段值可以重复,也可以作为排序的依据,但因为可能有多个相同的索引值,因此查询时会找到多个符合条件的记录。一个数据表中可以有多个普通索引。 3.4.1 索引文件及分类 3. 索引文件的分类 单入口索引文件(扩展名为.IDX)( IDX索引文件中只包含一个索引) 复合索引文件(扩展名.CDX),.CDX索引文件中可以包含有一个或多个索引,所以称为复合索引文件。 结构化复合索引文件 非结构化复合索引文件(独立符合索引文件) 结构化复合索引的主文件名与数据表的主文件名相同,并随着数据表的打开而打开,在添加、更改或删除记录时会自动进行维护; 非结构化复合索引文件(独立符合索引文件)的主文件名与数据表文件不同,必须用命令打开。 3.4.2 创建索引文件 1. 建立结构化复合索引文件 (1) 在表设计器中创建索引文件 (2) 命令方式创建索引 【格式】INDEX ON <表达式> TAG <索引标识名> [FOR <条件表达式>] [ASCENDING|DESCENDING] [UNIQUE|CANDIDATE][ADDITIVE] 【功能】建立结构化复合索引文件。 对rsda表(1)按编号升序建立索引;(2)按工作日期降序;(3)先按性别升序,若性别相同,则按工作日期升序建立索引(rsda.cdx) USE rsda INDEX ON 编号 TAG bh INDEX ON 工作日期 TAG gzrq desc INDEX ON 性别+dtoc(工作日期) TAG xbrq 2. 建立独立复合索引文件 独立复合索引文件的扩展名也是.CDX,但其主文件名与数据表文件名不相同,且使用时还需单独打开。独立复合索引文件主要用来创建那些使用不太频繁的索引。 独立复合索引文件不能在表设计器中创建,命令建立。 【格式】INDEX ON <表达式>TAG <索引标识名> OF <独立复合索引文件名> [FOR <条件表达式] [ASCENDING|DESCENDING] [UNIQUE|CANDIDATE][ADDITIVE] 例:对rsgl.dbf表,(1)编号升序建立索引;(2)先按性别升序,若性别相同,则按工作日期升序建立独立索引文件gl.cdx use rsgl index on 编号 tag bh cand of gl.cdx index on 性别+dtoc(出生日期) tag xbcsrq of gl.cdx 3. 重新建立索引文件 在数据表的使用过程中,当增删记录或数据表中被索引文件使用的关键字段改动时,结构化复合索引会随着数据表的打开自动打开并能及时得到更新,但如果在使用数据表时未打开相

文档评论(0)

aena45 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档