【数据库与程序设计】数据库综合操作 看-_第1页
【数据库与程序设计】数据库综合操作 看-_第2页
【数据库与程序设计】数据库综合操作 看-_第3页
【数据库与程序设计】数据库综合操作 看-_第4页
【数据库与程序设计】数据库综合操作 看-_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

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

文档简介

第五章数据库综合操作6第

5

章6数据库数据库综合操作数据库应用往往涉及到多个表。第五章数据库综合操作6

5.1索引及索引类型65.1.1索引65.1.2索引的类型65.1.3索引文件及其分类6

5.2创建索引与索引的使用65.2.1用表设计器创建索引65.2.2用命令方式创建索引65.2.3使用索引6

5.3数据库中多表的使用65.3.1工作区65.3.2工作区选择内容第五章数据库综合操作6

5.4建立表间的关系建立表间永久关系设置参照完整性建立表间临时关系内容第五章数据库综合操作5.1

索引及索引类型5.1.1

索引记录的物理顺序Visual

FoxPro中表文件的记录号是按记录输入时的先后顺序给定的,我们把这种顺序称为记录的物理顺序。记录的逻辑顺序VisualFoxPro中表的索引和一本书中的索引类似。书中的索引是一份页码的列表,指向书中的页号。表的索引按某种规则对记录进行逻辑排序,是一个记录号的列表,指向待处理的记录,并确定了记录的处理顺序。第五章数据库综合操作索引索引不是重排记录的物理顺序生成一个新的表文件,而是选定一个关键字,根据关键字的值对记录进行逻辑排序。按关键字值的顺序记录此关键字值所在记录的记录号。当表文件打开时,若对应索引文件也已打开,表中记录的输出顺序就是在索引文件中的顺序,称为记录的逻辑顺序。索引可以加速检索数据的速度。第五章数据库综合操作5.1.2索引的类型主索引数据库中的每一个表建立一个主索引,且一个表只能创建一个主索引。不能为自由表建立主索引2.候选索引唯一索引普通索引第五章数据库综合操作5.1.3索引文件及其分类结构复合压缩索引文件以.CDX为扩展名在打开表时自动打开,此文件在对表进行修改时,能自动更新。非结构复合压缩索引文件独立索引文件第五章数据库综合操作5.2

创建索引与索引的使用用表设计器创建索引用命令方式创建索引使用索引设置普通索引命令格式:INDEX

ON <关键字表达式>

TAG <标识名>

[FOR<条件表达式>][ASCENDING|DESCENDING]命令功能:创建一个复合索引文件。说明:复合索引标识是一种可以包含任意数量的独立标识(索引项)的单个索引文件,每一个标识都由其惟一标识名确定。第五章数据库综合操作FOR<条件表达式>短语:用于建立有条件筛选索引。即只有符合FOR条件的记录才会出现在索引文件关键字值列表中。ASCENDING|DESCENDING短语:用于指定索引的排序方式,其中ASCENDING表示按升序排列,DESCENDING表示按降序排列。默认值为ASCENDING。设置唯一索引建立非结构索引文件<关键字表达式>

TAG <标识名>

OF[FOR

条件表达式]命令格式:

INDEX

ON<非结构复合索引文件名>[ASCENDING|DESCENDING]说明:在非结构复合索引文件中可有多个标识。第五章数据库综合操作4.建立独立结构索引文件命令格式:

INDEX

ON<关键字表达式>

TO <IDX索引文件名>[FOR条件表达式][ASCENDING|DESCENDING]说明:用此命令建立独立结构索引文件后,该文件自动处于打开状态并作为当前索引生效。第五章数据库综合操作5.2.3使用索引菜单方式指定多个字段对记录排序使用不同索引类型的选择命令方式使用索引命令格式:[ORDER<索引号>|<IDX<CDX索引文件名>]SET

INDEX

TO[<索引文件名表>|?]索引文件名>]|

[TAG]<标识名>[OF[ASCENDING

|

DESCENDING]命令功能:打开一个或多个索引文件。第五章数据库综合操作命令使用说明:<索引文件名表>用于指定要打开的一个或多个索引文件。这些索引文件彼此之间用逗号隔开。在索引文件列表中可以指定独立结构索引文件或非结构复合索引文件。另外,索引文件列表中指定第一个索引文件自动作为当前索引生效。但要注意的是,如果在索引文件列表中指定的第一索引是非结构复合索引,那么若要作为当前索引生效还需要使用ORDER短语或SETORDER TO

命令。?用于在执行SETINDEXTO命令时弹出“打开”对话框以选择要打开的索引文件。ORDER <索引号>用于指定在索引文件列表中第几个索引文件作为当前索引生效。第五章数据库综合操作命令使用说明:(4)ORDER <IDX索引文件名>用于指定在<索引文件列表>中哪一个独立结构索引文件为当前索引。(5)ORDER <标识名>

[OF <CDX索引文件名>]用于指定在<索引文件列表>中哪一个复合索引标识作为当前索引。(6)[ASCENDING|DESCENDING]用于指定复合索引中的某一索引标识是按照升序还是降序方式显示记录。若SET

INDEX

TO后不带任何参数表示关闭索引文件。在VisualFoxpro中如果用户已同时打开了某一个表的多个索引文件,但在任何一个时刻只能有一个索引文件作为当前索引文件生效。若要改变当前索引可以使用SETORDERTO命令来设置当前索引。第五章数据库综合操作命令格式:SET

ORDER

TO

[<索引号>|

<IDX索引文件名>]

|[TAG

]

<标识名>

[OF <CDX索引文件名>] [ASCENDING

|DESCENDING]功能:设置当前索引。第五章数据库综合操作5.3

数据库中多表的使用5.3.1工作区工作区工作区是Visual

FoxPro在内存中开辟的能独立地使用命令对一个数据库文件进行操作的一块区域。工作区号与工作区别名VisualFoxPro6.0中最多能同时打开32767个工作区工作区的别名前十个为A、B、…、J,对于工作区11到32767,自动指定的别名是W11到W32767。当前工作区与当前表当Visual

FoxPro系统启动后,自动选择1号工作区为当前工作区。第五章数据库综合操作用户定义的别名命令格式:USE〈表文件名〉[ALIAS〈别名〉][AGAIN]命令功能:打开一个表。说明:若无ALIAS短语,以表文件名作为别名。AGAIN短语,表示表文件可在多个工作区中同时被打开。第五章数据库综合操作5.3.2工作区选择1.命令方式命令格式:SELECT 〈工作区号〉|〈工作区别名〉功能:选择某工作区为当前工作区。 2.菜单方式第五章数据库综合操作5.4

建立表间的关系5.4.1建立表间永久关系1.表的关系表的关系可分为一对一关系、一对多关系和多对多关系。2.表间关系的类别在Visual

FoxPro中,表间关系分为临时表间关系和永久表间关系两种。第五章数据库综合操作5.4.2

设置参照完整性级联:不论何时更改父表中的某个字段,VisualFoxPro都会自动更改所有相关子表记录中的对应值。限制:禁止更改父表中的主关键字段或候选关键字段中的值,这样在子表中就不会出现孤立的记录。忽略:即使在子表中有相关的记录,仍允许更新父表中的记录。第五章数据库综合操作5.4.3建立表间临时关系命令方式建立关系命令格式:SET

RELATION

TO[〈关系表达式1〉INTO〈工作区号1〉|〈别名1〉[,〈关系表达式2〉 INTO

〈工作区号2〉|〈别名2〉…][IN

〈工作区号〉|〈别名〉]

[ADDITIVE]功能:建立两个打开的表之间的关系。第五章数据库综合操作〈关系表达式〉可以是:关键字表达式:指定在父表和子表之间建立关系的关系表达式。子表必须按关键字建立索引,且索引必须是主索引。索引形式不限,可以是复合索引,也可以是普通索引。数值表达式:两表按照记录号相联系,子表不必排序或索引。当父表记录指针移动时,子表的记录指针指向与数值表达式值相匹配的记录上。例如,SET

RELATION

TO

2*RECNO()

INTO YK,则父表的记录号为1与别名为YK的子表记录号为2的关系,父表记录号为3与YK的记录号为6的记录关系…。第五章数据库综合操作INTO〈工作区号1〉|〈别名1〉:指定非当前工作区中的子表。〈关系表达式2〉 INTO〈工作区号2〉|〈别名2〉…:指定其他关系表达式和其他子表,建立另一个父表和子表之间的关系。在一条SET

RELEATION命令中可以创建单个父表与多个子表之间的关系,各关系之间用

温馨提示

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

评论

0/150

提交评论