第四章 Visual FoxPro数据库及其操作二文档格式.docx
- 文档编号:21580784
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:11
- 大小:24.25KB
第四章 Visual FoxPro数据库及其操作二文档格式.docx
《第四章 Visual FoxPro数据库及其操作二文档格式.docx》由会员分享,可在线阅读,更多相关《第四章 Visual FoxPro数据库及其操作二文档格式.docx(11页珍藏版)》请在冰豆网上搜索。
数据库表和自由表都可以建立普通索引。
普通索引和唯一索引可以存储在.CDX独立复合索引文件和.IDX单索引文件中。
(2)索引文件的建立
1)命令方式
【格式】INDEXON<
索引关键字表达式>
TO<
单索引文件>
|TAG<
标识名>
[OF<
独立复合索引文件名>
]
[FOR<
逻辑表达式>
][COMPACT]
[ASCENDING|DESCENDING][UNIQUE][ADDITIVE]
【功能】对当前表文件按指定的关键字建立索引文件。
【说明】<
:
指定建立索引文件的关键字表达式,可以是单一字段名,也可以是多个字段组成的字符型表达式,表达式中各字段的类型只能是数值型、字符型和日期型和逻辑型。
当表达式是单个字段名时,字段类型不用转换;
应转换成同一类型的表达式。
TAG<
此选项只对建立复合索引文件时有效,指定建立或追加索引标识的标识名。
OF<
独立复合索引文件>
指定独立复合索引文件名。
若有此选项,表示在指定的独立复合索引文件中追加一个索引标识,若指定的独立复合索引文件不存在,系统将自动建立指定的文件。
若没有此选项,表示在结构复合文件中追加一个索引标识,若结构复合索引文件不存在,系统将自动建立结构复合索引文件。
FOR<
表示只对满足条件的记录建立索引。
COMPACT:
此选项只对单索引文件有效,表示建立压缩索引文件。
ASCENDING|DESCENDING:
ASCENDING表示按升序建立索引,DESCENDING表示按降序建立索引。
缺省时,按按升序建立索引。
单索引文件不能选用DESCENDING选项。
UNIQUE:
表示建立的是唯一索引。
ADDITIVE:
表示保留以前打开的索引文件。
否则,除结构复合索引文件外,以前打开的其他索引文件都将被关闭。
新建的索引文件自动打开,并开始起作用。
【例1】对STUD.DBF表文件建立出生日期单索引文件STUD.IDX。
USESTUD
INDEXON出生日期TOSTUD
【例2】对表文件STUD.DBF,建立一个基于出生日期字段的结构复合索引文件。
INDEXON出生日期TAG出生日期DESCENDING
【例3】在表文件STUD.DBF的结构复合索引文件中,按学号追加一个标识。
INDEXON学号TAG学号
【例4】在表文件STUD.DBF的结构复合索引文件中,先按性别再按学号追加一个标识XBXH。
INDEXON性别+学号TAGXBXH
【例5】在表文件STUD.DBF中,先按性别再按是否团员建立一个独立复合索引文件SXBTY.CDX。
INDEXON性别+IIF(是否团员,’团员’,’非团员’)TAG性别团员OFSXBTY
2)菜单方式
①打开表文件。
②选择【显示】|【表设计器】命令,打开表设计器对话框,选择“索引”标签。
③在索引名中输入索引标识名,在类型的下拉列表框中确定一种索引类型,在表达式中输入索引关键字表达式,在筛选中输入确定参加索引的记录条件,在排序序列下默认的是升序按钮,单击可改变为降序按钮。
④确定好各项后,选择“确定”,关闭表设计器,同时索引建立完成。
⑤同样的方法也可以将以前建立的索引调出,利用表设计器上的“插入”或“删除”按钮进行插入或删除。
注意:
用表设计器建立的索引都是结构复合索引文件。
(3)索引文件的打开【格式1】USE<
文件名>
[INDEX<
索引文件名表|?
>
][ORDER<
数值表达式2>
|<
|[TAG]<
复合索引文件名>
][ASCENDING|DESCENDING]]
【功能】打开指定的表文件及相关的索引文件
【说明】:
INDEX<
索引文件名表>
|?
表示打开的索引文件;
如果选择“?
”,则系统将出现“打开”对话框,供用户选择索引文件名;
如果<
中的第一个索引文件是单索引文件,则它是主索引文件,若第一个索引文件是复合索引文件,则表文件的记录将以物理顺序被访问。
<
指定要打开的索引文件,索引文件中的文件扩展名可以省略,但如果存在同名的单索引文件和复合索引文件,必须带扩展名。
中的单索引文件和复合索引文件的标识有一个唯一的编号,编号最小值为1,编号规则为:
先将单索引文件按它们在<
中的顺序编号,再将结构复合索引文件按标识产生的顺序连续编号,最后将独立复合索引文件中的标识先按它在<
中的顺序,再按标识产生的顺序连续编号。
[ORDER]子句:
指定主索引。
选择此选项时,主索引文件将不是<
中的第一个单索引文件,而是此选项指定的单索引文件或标识。
[ORDER]子句中各选项的含义如下:
指定主索引的编号,若<
的值为0,表示不设主索引。
指定的单索引文件设置为主索引。
[TAG]<
]:
表示将<
中的指定标识作为主索引。
]缺省表示为结构复合索引文件。
表示主索引被强制以升序或降序索引;
缺省此选项,主索引按原有顺序打开。
【格式2】SETINDEXTO[<
数值表达式>
单索引文件名>
][ASCENDING|DESCENDING]][ADDITIVE]
【功能】在已打开表文件的前提下,打开相关索引文件。
【说明】ADDITIVE:
(4)索引文件的关闭
【格式1】USE
【功能】关闭当前工作区中打开的表文件及所有索引文件。
【格式2】SETINDEXTO
【功能】关闭当前工作区中打开的所有单索引文件和独立复合索引文件。
【格式3】CLOSEINDEXS
结构复合索引文件不能用以上命令关闭,它随表文件的打开而打开,随表文件的关闭而关闭。
(5)索引的删除
1)标识的删除
【格式】DELETETAG<
标识名1>
复合索引文件名1>
][,<
标识名2>
复合索引文件名2>
]]...
或:
DELETETAGALL[OF<
【功能】从指定的复合文件中删除标识
【说明】OF<
指定复合索引文件名,若缺省,则为结构复合索引文件。
2)单索引文件的删除
【格式】DELETEFILE<
【功能】删除指定的单索引文件
【说明】关闭的索引文件才能被删除,文件名必须带扩展名。
【例】删除表文件STUD.DBF的单索引文件STUD.IDX及结构复合索引文件中的所有标识。
DELETEFILESTUD.IDX
DELETETAGALL
(6)索引查询(FIND、SEEK)
1)菜单方式
①首先打开表文件。
②选择【显示】|【浏览】命令。
③选择【表】|【转到记录】|【定位】命令,打开定位记录对话框。
④在“作用范围”下拉列表框中选择查询范围,在FOR或WHILE框中输入查询条件,选择定位按钮。
系统将指针定位于符合条件的第一条记录上。
2)索引查询(FIND、SEEK)
LOCATE命令用于按条件进行顺序定位,无论索引文件是否打开都可使用。
在打开索引文件后,还可以用FIND、SEEK命令进行快速检索。
a.FIND命令【格式】FIND<
字符串>
/<
数值常量>
【功能】在表文件的主控索引中查找关键字值与<
或<
相匹配的第一个记录。
【说明】必须打开相应的库文件、主索引文件。
查询字符串,字符串可以不用定界符括起来,但前后有空格的,则必须要括进来。
查询常数,必须使用索引关键字的完整值。
允许查询字符型内存变量,但必须使用宏替换函数。
由于索引文件中关键字表达式值相同的记录总是排在一起的,可用SKIP、DISP命令来逐个查询。
查询完满足条件的记录后,不能自然给出提示,常借助于EOF()函数来判断查询是否完成。
多关键字查询,建立索引时STR函数若没有指定小数位,则应补齐不足10位的空格。
如果用SETEXACTON命令,则匹配必须是精确的。
即FIND命令中的查询内容必须与记录的关键字段值完全相等。
如果用SETEXACTOFF命令,则匹配可以是不精确的,即只要FIND命令中的查询内容与记录的关键字段值的左侧相等即可。
【例】打开表文件STUD.DBF,查找姓“赵”的记录。
SETORDERTO姓名FIND赵
b.SEEK命令
【格式】SEEK<
表达式>
【功能】在表文件的主索引中查找关键字值与<
值相匹配的第一个记录。
【说明】SEEK命令可以查找字符型、数值型、日期型、逻辑型表达式的值。
SEEK命令中的表达式的类型必须与索引表达式的类型相同。
可以查找字符、数值、日期和逻辑型字段的值。
内存变量可以直接进行查询,不用进行宏替换。
表达式为字符串时,必须用定界符括起来。
日期常量也必须用大括号括起来。
表达式可以为一复杂的表达式,计算机先计算表达式的值,然后用其值进行查询。
【例】用SEEK命令在STUD.DBF中查找记录。
INDEXON是否团员TAG是否团员
SETORDERTO姓名SEEK"
孙"
例题
(1)visualFoxPro中的索引有____。
A.主索引、候选索引、普通索引、视图索引
B.主索引、次索引、惟一索引、普通索引
C.主索引、次索引、候选索引、普通索引
D.主索引、候选索引、惟一索引、普通索引
【解析】本题考查的知识点是visualFoxPro中的索引。
VisualFoxPro中包括4种索引,分别为主索引、候选索引、惟一索引、普通索引。
选项A中的视图索引错误;
选项B、C中的次索引错误。
【答案】D
(2)在VisualFoxPro中,一个表可以创建____个主索引。
A.1
B.2
C.3
D.若干
【解析】本题考查知识点是VisualFoxPro中的主索引。
在VisualFoxPro中,建立主索引的字段可以看作是主关键字,一个表只能有一个主关键字,所以一个表可以创建一个主索引。
因此正确答案为A。
【答案】A
(3)主索引可确保字段中输入值的_____性。
A.惟一
B.重复
C.多样
D.兼容
【解析】本题考查的知识点是主索引的特性。
主索引在指定字段或表达式中不允许出现重复值的索引,这种索引可以起到主关键字的作用,所谓不允许出现重复值是指建立索引的字段值不允许重复,即惟一的特性。
(4)惟一索引中的“惟一性”是指____的惟一。
A.字段值
B.字符值
C.索引项
D.视图项
【解析】本题考查的知识点是惟一索引的特性。
在VisualFoxPro中,惟一索引是为了保持同早期版本的兼容性,它的“惟一性”是指索引项的惟一,而不是字段值的惟一。
选项A中字段值惟一是指主索引中字段值惟一。
选项B和D说法错误。
【答案】C
(5)在VisualFoxPro中的4个索引中,一个表可以建立多个_____。
A.主索引、候选索引、惟一索引、普通索引
B.候选索引、惟一索引、普通索引
C.主索引、候选索引、惟一索引
D.主索引、惟一索引、普通索引
在VisualFoxPro中,由于主索引中不允许出现重复值,一个表只能有一个主关键字,因此一个表只可以建立一个主索引。
建立候选索引的字段可以看作是候选关键字,所以一个表可以建立多个候选索引。
惟一索引中的惟一是指索引项的惟一,不是指字段值的惟一,因此一个表中可以建立多个索引。
普通索引可以决定记录的处理顺序,它不仅允许字段中出现重复值,并且索引项也允许出现重复值,因此一个表中可以建立多个普通索引。
本题选项A中的“主索引”错误;
选项C中多了主索引,缺少普通索引;
选项D中多了主索引,缺少候选索引。
【答案】B
(6)下列更改索引类型的操作方法正确的是____。
A.打开表设计器,选定“字段”选项卡,从“索引”下拉列表中选择
B.打开表设计器,选定“索引”选项卡,在“索引名”下拉列表中选择
C.打开表设计器,选定“表”选项卡,在“索引名”下拉列表中选择
D.打开表设计器,选定“索引”选项卡,在“类型”下拉列表中选择
【解析】本题考查的知识点是更改索引类型的操作。
正确的操作方法是打开表设计器,选定“索引”选项卡,在“类型”下拉列表中选择。
选项A中“字段”选项卡下的索引用未设置索引的排序方式;
选项B中的“索引名”不能用来定义索引的类型。
它只是索引的名称;
选项C中“表”选项卡下没有“索引名”项。
因此正确答案为D
(7)在VisualFoxPro中,结构复合压缩索引文件的特点是--。
A.在打开表时自动打开
B.在同一索引文件中能包含多个索引方案,或索引关键字
C.在添加、更改或删除记录时自动维护索引
D.以上答案均正确
【解析】本题考查的知识点是结构复合压缩索引文件的特点。
在VisualFoxPro中,结构复合压缩索引文件的特点是:
在打开表时自动打开;
在同一索引文件中能包含多个索引方案,或索引关键字;
在添加、更改或删除记录时自动维护索引。
因此正确答案为D。
(8)在VisualFoxPro中,SKIP命令是按___定位,即如果使用索引时,是按___的顺序定位。
【解析】本题考查的知识点是SKIP命令的使用。
在VisualFoxPro中。
SKIP命令是按逻辑顺序定位,即如果使用索引时,是按索引项的顺序定位的。
【答案】逻辑顺序,索引项
(9)在VisualFoxPro中,创建索引的命令是____。
【解析】本题考查的知识点是创建索引的命令。
在VisualFoxPro中,创建索引的命令是INDEX。
【答案】INDEX
(10)在Visual标FoxPro中,用命令可以创建____索引,但不可以创建____索引。
【解析】本题考查的知识点是利用命令创建索引。
在VisualFoxPro中,利用命令可以创建普通索引、惟一索引(UNIQUE)和候选索引(CANDIDATE)。
这是因为表设计器中指定一个主索引实际就是指定了一个主关键字。
【答案】普通索引、惟一索引、候选索引,主索引
(11)在VisualFoxPro中,惟一索引中的“惟一”是指____。
【解析】本题考查的知识点是惟一索引中的“唯一”的含义。
在VisualFoxPro中,惟一索引与字段值的惟一性无关、即建立了惟一索引的字段,它的字段值可以重复,“惟一”是指在使用相应的索引时,重复的索引字段值只有唯一一个值出现在索引项中。
【答案】在使用相应的索引时,重复的索引字段值只有惟一一个值出现在索引项中
(12)VisualFoxPro索引是____。
【解析】本题考查的知识点是索引的概念。
在VisualFoxPro中,索引是由指针构成的文件,这些指针逻辑上按索引关键字值进行排序。
【答案】由指针构成的文件,这些指针逻辑上按索引关键字值进行排序
(13)在VisualFoxPro中,打开索引文件的命令格式是____。
【解析】本题考查的知识点是打开索引文件的命令格式。
在VisualFoxPro中,打开索引文件的命令格式是:
SETINDEXTO<
IndexFileList>
其中IndexFileList是用逗号隔开的索引文件列表。
【答案】SETINDEXTO<
(14)候选关键字是指____。
【解析】本题考查的知识点是候选关键字的概念。
在VisualFoxPro中,如果一个字段的值或几个字段的位能够惟一标识表中的一条记录,则这样的字段称为候选索引。
【答案】如果一个字段的值或几个字段的值能够惟一标识表中的一条记录,则这样的字段称为候选索引。
(15)在VisualFoxPro中,复合索引文件包括____和____。
【解析】本题考查的知识点是复合索引文件。
在VisualFoxPro中,复合索引文件包括结构复合索引文件和非结构复合索引文件。
【答案】结构复合索引文件和非结构复合索引文件
(16)结构复合索引文件的主名与____相同,它随____的打开而打开,在删除记录时会自动维护。
【解析】本题考查的知识点是结构复合索引文件。
结构复合索引文件是复合索引文件一种。
结构复合索引文件的主名与表的主名相同,它随表的打开而打开、在删除记录时会自动维护。
【答案】表的主名,表
(17)非结构复合索引文件在--时用户为义取了名字,打开非结构复合索引文件要使用____或____,因而使用很少。
【解析】本题考查的知识点是非结构复合索引文件。
非结构复合索引文件在定义复合索引文件时用户为其取了名字,打开非结构复合索引文件要使用SETINDEX命令或USE命令中的INDEX短语,因而使用很少。
【答案】定义复合索引文件,SETINDEX命令,USE命令中的INDEX短语
(18)单击表单设计器中的“索引”选项卡上的--按钮,可以在当前行插入一个空行,以定义新的索引。
【解析】本题考查的知识点是利用选项卡上按钮定义新索引。
在表单设计器的索引选项卡上共有4个按钮:
确定、取消、插入、删除。
“确定’’
按钮用来确认所做的操作;
“取消”按钮用来取消所做的操作;
“插入”按钮用来添加新索引;
“删除”按钮用来删除索引。
根据题意,此题答案为“插入”。
【答案】插入
14.多表的操作迄今所讲述的对表的操作都是在一个工作区进行的,每个工作区最多只能打开一个表文件,用USE命令打开一个新的表,同时也就关闭了前面已打开的表。
在实际应用中,用户常常需要同时打开多个表文件,以便对多个表文件的数据进行操作。
为了解决这一问题,VisualFoxPro引入了工作区的概念。
VisualFoxPro允许用户在表间建立临时关系和永久关系。
15.工作区与多个表
(1)工作区和当前工作区
VisualFoxPro能同时提供32767个工作区。
系统默认值为1区。
在任意时刻,只有一个工作区是当前工作区,用户只能在当前工作区对打开的当前库进行操作。
每一个工作区都可以并且只能打开一个数据库文件。
同一个数据库文件不允许同时在多个工作区打开,但在其它工作区中被关闭之后,可以在任意一个工作区中被打开。
各工作区中打开的数据库彼此相互独立(指针不受影响)。
(2)选择当前工作区每一个工作区用工作区号或别名来标识。
1)工作区号
利用数字1~32767来标识32767个不同的工作区。
2)别名
前10工作区用A~J10个字母来标识。
采用该工作区中已打开的数据库的库名来作别名
用户自己定义
【命令格式】:
USE〈数据库名〉[ALIAS〈别名〉]
【功能】:
打开数据库文件并为该数据库起一个别名。
给数据库起了别名后,数据库名就不是默认的别名了。
3)工作区的选择
当系统启动时,1号工作区是当前工作区,若想改变当前工作区,则可使用SELECT命令来转
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第四章 Visual FoxPro数据库及其操作二 第四 FoxPro 数据库 及其 操作