1.索引
索引可加速对索引字段的查询,还能加速排序及分组操作。例如,如果需要使用姓名搜索信息,可以创建“姓名”字段的索引,以加快搜索的速度。
当我们建立一个很大的数据库的时候,就会发现通过查询在表中检索一个数据信息很慢。通过分析发现,当我们要在一个表中查询“订货单位”字段内的某个值时,会从整个表的开头一直查到末尾,如果能将表中的值进行排序,那同样的查询工作对“订货单位”字段检索的记录数就可以少很多,速度也自然会变得更快,所以很多表都需要建立索引。索引可加速对索引字段的查询,还能加速排序及分组操作。
2.创建索引
(1)使用表设计器设计索引
使用表设计器中字段的索引属性可以设置单一字段索引,如图3-25所示。在表设计器中选择需要设计索引的字段,在字段属性栏的索引属性设置组合框中,选择“有(无重复)”选项,可以创建无重复值的索引;选择“有(有重复)”选项,可以创建允许重复值的索引。
图3-25 表设计器“索引”属性
(2)使用“索引”对话框创建索引
利用“索引”对话框创建索引的基本步骤如下:
1)执行“视图”→“索引”菜单命令,可以打开“索引”对话框(也可以单击工具栏中的“索引”按钮),如图3-26所示。
图3-26 “索引”对话框1
2)在“索引名称”下方的文本框中输入索引名称,在“字段名称”下方的组合框中选择字段名称,在“排序次序”下方的组合框中选择升序或降序,如图3-27所示。
图3-27 “索引”对话框2
3)在“索引”对话框下部“主索引”右侧的组合框中设置索引的属性值。“是”表示创建索引的字段被设置为主键,“否”则表示创建索引的字段被设置为非主键。
4)在“索引”对话框下部“唯一索引”右侧的组合框中设置索引的属性值。“是”表示创建索引的字段不允许重复值,“否”则表示创建索引的字段允许重复值。
5)在“索引”对话框下部“忽略Nulls”右侧的组合框中设置索引的属性值。“是”表示创建的索引将排除值为“Null”的记录,“否”则表示创建的索引不排除值为“Null”的记录。
3.表间关联关系
在Access中,毎个表都是数据库独立的一个部分,但每个表又不是完全孤立的,表与表之间可能存在着相互的联系。例如,前面建立了“课程管理”数据库中的3个表。仔细分析这3个表,不难发现,不同表中有相同的字段名,如“学生信息表”中有“学号”,“选修信息表”中也有“学号”,通过这个字段,就可以建立起两个表之间的关系。一旦两个表之间建立了关系,就可以很容易地从中找出所需要的数据。
Access中表与表之间的关系可以分为一对一、一对多和多对多3种。
1)一对一关系:在一对一关系中,A表中的每一记录仅能在B表中有一个匹配的记录,并且B表中的每一记录仅能在A表中有一个匹配记录。此类型的关系并不常用,因为大多数与此方式相关的信息都在一个表中。可以使用一对一关系将一个表分成许多字段,或因安全原因隔离表中部分数据,或存储仅应用于主表的子集的信息。
2)一对多关系:一对多关系是关系中最常用的类型。在一对多关系中,A表中的一个记录能与B表中的许多记录匹配,但是在B表中的一个记录仅能与A表中的一个记录匹配。
3)多对多关系:在多对多关系中,A表中的记录能与B表中的许多记录匹配,并且在B表中的记录也能与A表中的许多记录匹配。此类型的关系仅能通过定义第三个表(称做联结表)来达成,它的主键包含二个字段,即来源于A和B两个表的外键。多对多关系实际上等同于和第三个表的两个一对多关系。
4.建立表间关联关系
创建表之间的关系时,相关联的字段不一定要有相同的名称,但必须有相同的字段类型,除非字段是个“自动编号”字段,仅当“自动编号”字段与“数字”字段的“字段大小”属性相同时,才可以将“自动编号”字段与“数字”字段进行匹配。例如,如果一个“自动编号”字段和一个“数字”字段的“字段大小”属性均为“长整型”,则它们是可以匹配的。换言之,即便两个字段都是“数字”字段,必须具有相同的“字段大小”属性设置,才是可以匹配的。
在表之间建立“关系”的基本步骤如下:
1)关闭所有打开的表。不能在已打开的表之间创建或修改关系。(www.daowen.com)
2)按<F11>键切换到“数据库”窗口。
3)选择“工具”→“关系”命令,或者单击工具栏中的“关系”按钮,如果数据库中尚未定义任何关系,则会自动显示“显示表”对话框,如图3-28所示。
图3-28 “显示表”对话框
提示
如果需要添加要关联的表,而“显示表”对话框未显示,请单击工具栏中的“显示表”图标按钮。
4)双击要作为相关表的名称,然后关闭“显示表”对话框。
5)在打开的如图3-29所示的“关系”对话框中,从某个表中将所要的相关字段拖到其他表中的相关字段。多数情况下是将表中的主键字段(以粗体文本显示)拖到其他表中名称相似字段(经常具有相同的名称)。
图3-29 “关系”对话框
6)此时,系统将显示“编辑关系”对话框,如图3-30所示,检查显示在两个列中的字段名称以确保正确性。必要情况下可根据需要更改。
图3-30 “编辑关系”对话框
7)单击“确定”按钮完成关系创建,如图3-31所示。
图3-31 “关系”对话框
8)关闭“关系”对话框时,所创建的关系将保存在此数据库中。
5.编辑表间关联关系
如果要编辑表间的关系,可在“关系”窗口中单击要编辑的关系线,在菜单中选择“关系”→“编辑关系”命令,或者右键单击要编辑的关系线,在弹出菜单中选择“编辑关系”命令,打开“编辑关系”对话框,重新设置两个表之间的关系即可。
6.删除表间关联关系
如果要删除表间的关系,可在“关系”窗口中右键单击要编辑的关系线,在弹出菜单中选择“删除”命令,或者单击要编辑的关系线,按下<Delete>键即可。
7.参照完整性
参照完整性是在输入或删除记录时,为维持表之间已定义的关系而必须遵循的规则。如果实施了参照完整性,那么当主表中没有相关记录时,就不能将记录添加到相关表中,也不能在相关表中存在匹配的记录时删除主表中的记录,更不能在相关表中有相关记录时,更改主表中的主键值。
在建立表之间的关系时,“编辑关系”对话框上有一个复选框“实施参照完整性”,单击它之后,“级联更新相关字段”和“级联删除相关记录”两个复选框就可以用了。如图3-32所示。
图3-32 “编辑关系”对话框
如果选定“级联更新相关字段”复选框,在修改关联字段时执行参照完整性检查。在修改“主表”关联字段时,如果“子表”中有关联的记录,则可自动修改或不允许修改“子表”关联字段。同样,在修改“子表”关联字段时,也可检查在“主表”中是否有关联的记录。
如果选定“级联删除相关记录”后,当删除记录时就会执行参照完整性检查。在删除“主表”关联记录时,需要检查“子表”中是否有关联的记录。若有关联记录,则不允许删除“主表”记录,或者在删除“主表”记录的同时删除“子表”中的关联记录。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。