主键和外键虽然主要用于校验,但也可以提高数据库性能。
以下示例说明主键如何加快查询的执行速度。
SELECT * FROM Employees WHERE EmployeeID = 390; |
数据库服务器要执行该查询,最简单的方法是查看 Employees 表中的所有 75 行,并检查每行中的雇员 ID 是否为 390。由于只有 75 名雇员,因此这种方法不会花费很长的时间,但对于包含数千个条目的表,顺序搜索可能要花费很长的时间。
每个主键或外键所体现的参照完整性约束是由 SQL Anywhere 借助于索引(用每个主键或外键声明隐式创建)来强制实施的。EmployeeID 列是 Employees 表的主键。通过对应的主键索引,可以快速地检索到雇员编号 390。无论 Employees 表中有 100 行还是有 1000000 行,这种快速搜索方法都将使用大致相同的时间。
系统将自动为主键和外键创建单独的索引。这样,SQL Anywhere 就可以更为有效地执行许多操作。
有关主键和外键工作方式的详细信息,请参见表间的关系。
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |