✅ 操作成功!

参照完整性

发布时间:2023-06-07 作者:admin 来源:文学

参照完整性

参照完整性

极体-马鞍山长江大桥

2023年2月22日发(作者:a3排版)

全国计算机等级考试(二级VisualFoxPro)VisualFoxPro数据库及其操作

六、数据表的索引

1.索引的类型:

①.主索引:

只有数据库表(数据库中的数据表)才能建立主索引,自由表不能建立主索引;

索引字段的值不允许重复,也不允许为空值(.Null.),否则无法创建主索引;

一个数据库表只能建立一个主索引,但可以没有主索引。

②.候选索引:

数据库表、自由表均可建立多个后选索引;

索引字段的值不允许重复,也不允许为空值(.Null.),否则无法创建后选索引;

③.唯一索引:

“唯一性”是指索引项的唯一,不是字段值的唯一;

出现在索引表中的记录为数据表中第一次出现的记录;

一个数据库表与自由表均可建立多个唯一索引。

④.普通索引:

数据库表、自由表均可建立多个普通索引;

索引字段值相同的记录在数据表中相临出现。

2.索引的建立:

1)命令方式建立

格式:INDEXONeExpressionTAGTagName[FORlExpression][ASCENDING|DESCENDING]

[UNIQUE|CANDIDATE]

ONeExpression:索引关键字,用于实现对字段进行排序

TAGTagName:索引名,用于区分同一索引文件中的不同索引

FORlExpression:索引条件,用于排除不参与索引的记录

ASCENDING|DESCENDING:ASCENDING升序,DESCENDING降序

UNIQUE|CANDIDATE:UNIQUE建立“唯一索引”,CANDIDATE建立“侯选索引”,不带

该参数建立“普通索引”;重要提醒:用指令方式不能建立“主索引”

默认升序排列;

索引名(TagName)最长为10个字符;

索引文件扩展名为:.CDX

2)对话框方式建立

3.索引的使用:

①.索引打开:

SETINDEXTOIndexFileList

②.设置当前索引:

SETORDERTO[nIndexNumber|[TAG]TagName]

全国计算机等级考试(二级VisualFoxPro)VisualFoxPro数据库及其操作

③.使用索引快速定位(查找):

SEEKeExpression

注意:SEEK只能检索符合条件的第一条记录,对于符合条件的其它记录,可用SKIP指令指向

(为什么?)

④.删除索引:

DELETETAGTagName|ALL

七、数据的完整性

数据完整性是指保证数据的正确性,数据完整性一般包括实体完整性、域完整性和参照完整性。

1.实体完整性与主关键字:

作用:保证表中记录惟一的特性,即在一个表中不允许有重复的记录。

实现:通过建立主关键字或侯选关键字来实现。

2.域完整性与约束规则:

作用:保证表中字段的正确性

实现:通过限定字段(表)的有效性规则来实现。

【例题1.1】:在“订货管理”数据库职工表中,设定职工的工资有效性规则在1000至3000元之间,

当输入的职工工资不在此范围时给出出错信息。

操作步骤:

在“规则”框中(或表达式生成器)输入表达式:工资>=1000and工资<=3000

在“信息”框中(或表达式生成器)输入表达式:“工资输入错误,应该在1000—3000元之间”

图1.5字段“有效性”规则的建立

注意:“有效性规则”是逻辑表达式,“信息”是字符型表达式。

3.参照完整性与表之间的关联:

作用:保证数据之间的完整性。

实现:通过建立参照完整性约束来实现。

全国计算机等级考试(二级VisualFoxPro)VisualFoxPro数据库及其操作

①.永久关系的类型

一对一关系:主表中任意一条记录,在子表中均最多有一条记录与之对应;

一对多关系:主表中至少存在一条记录,在子表中有多条记录与之对应;

多对多关系:主表中一条记录可能对应子表多条记录,子表中一条记录也可能对应主表中多条

记录。注意,在数据库表中,不能建立多对多关系。

②.永久关系的建立

第一步:在主表中建立主索引或侯选索引;

第二步:在子表中建立主索引、侯选索引或普通索引

第三步:在主表中用鼠标左键拖动所建立的主(侯选)关键字到子表对应索引上,然后松开鼠

标即可。

图1.6数据库表“一对多”永久关系

③.永久关系与索引类型的关系

图1.8永久关系与索引类型之间的关系

注意:主表只能建主索引或侯选索引;子表可以建主索引、侯选索引或普通索引。

④.设置参照完整性约束

设置参照完整性约束之前,必须首先清理数据库。其目的是将数据库中各表逻辑删除的记录进行

清理。清理完数据库后,用鼠标右键单击表之间任意联系(不管单击的是哪个联系,所有联系将都出

现在参照完整性生成器中),打开参照完整性生成器。如下图所示:

全国计算机等级考试(二级VisualFoxPro)VisualFoxPro数据库及其操作

参照完整性规则包括:更新规则、删除规则、插入规则。

更新规则:

主要用于当更新父表中的连接字段(主关键字)值时,如何处理相关的子表中的记录。可选择“级

联”、“限制”、“忽略”等三个选项之一。

级联:用新的关键字值更新子表中的所有相关记录。

限制:若子表中有相关记录则禁止更新。

忽略:允许更新,不管子表中的相关记录。

删除规则:

主要用于当父表中的记录删除时,如何处理相关的子表中的记录。可选择“级联”、“限制”、“忽略”

等三个选项之一。

级联:删除子表中的所有相关记录。

限制:若子表中有相关记录则禁止删除。

忽略:允许删除,不关子表中的相关记录。

插入规则:

主要用于在子表中插入记录时,是否进行参照完整性检查。可选择“限制”、“忽略”等两个选项之一。

注意:父表中插入记录不受任何限制。

限制:若父表中不存在匹配的关键字值,则禁止插入。

忽略:允许插入。

图1.9参照完整性生成器

👁️ 阅读量:0