WEB开发网
开发学院数据库MSSQL Server SQL Server使用索引实现数据访问优化 阅读

SQL Server使用索引实现数据访问优化

 2009-06-09 10:31:41 来源:WEB开发网   
核心提示: 通常,在索引树里发现需要的值并且转到目标数据记录,SQL Server使用索引实现数据访问优化(5),对于数据库引擎来说花费的时间是很短的,所以,但是,还有进一步提升的空间.让我们假设:Sales表包含10,000行数据,在数据库应用索引极大的提高了数据的检索操作.请跟随下列的步骤确保正确

通常,在索引树里发现需要的值并且转到目标数据记录,对于数据库引擎来说花费的时间是很短的,所以,在数据库应用索引极大的提高了数据的检索操作.

请跟随下列的步骤确保正确的索引包含在你的数据库里。

确保数据库的每个表有一个主健

这么做会确保每个表有一个聚焦索引,通过主健的值,表的数据页通按物理顺序排列在磁盘上。所以,任何使用主健的数据检索操作,任何在主健字段的排序操作都能非常迅速的检索数据。

在这些列上创建非聚焦索引

经常被作为搜索凭证的列

用来联合其它表的列

用来作为外健的列

用来排序的列

高选择性列

Xml类型

下面是一个创建索引的命令的例子

CREATEINDEX
 

NCLIX_OrderDetails_ProductIDON
dbo.OrderDetails(ProductID)

你也可以使用SQL Server控制台在需要的列上创建索引

SQL Server使用索引实现数据访问优化

第二步:创建正确的复合索引

现在,你是否已经在数据库创建了所有的适合的索引?假设,在一个Sales表(SelesID,SalesDate,SalesPersonID,ProductID,Qty),你已经在外键(ProductID)创建了索引,如果ProductID是一个高选择性列,任何在where语句里使用索引列(ProductID)的检索数据的SELECT查询都会运行的非常快吗?

对,相对没有在外键创建索引的情况(这需要全部数据页的遍历)来说,这是非常快的,但是,还有进一步提升的空间.

让我们假设:Sales表包含10,000行数据,下面的SQL语句选择400行。

上一页  1 2 3 4 5 6 7 8 9  下一页

Tags:SQL Server 使用

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接