本文整理自网络,侵删。
目录
- 索引
- 1、 什么是索引
- 2、 索引分类
- 聚集索引
- 非聚集索引
- 其他类型索引
- 3、 创建索引
- 4、 适合的创建索引的列
- 5、 不适合创建索引的列
- 视图
- 1、 什么是视图
- 2、 创建视图准则
- 3、 创建视图
- 4、 修改视图
- 5、 加密视图
- 总结
索引
1、 什么是索引
索引就是数据表中数据和相应的存储位置的列表,利用索引可以提高在表或视图中的查找数据的速度。
2、 索引分类
数据库中索引主要分为两类:聚集索引和非聚集索引。SQL Server 2005还提供了唯一索引、索引视图、全文索引、xml索引等等。聚集索引和非聚集索引是数据库引擎中索引的基本类型,是理解其他类型索引的基础。
聚集索引
聚集索引是值表中数据行的物理存储顺序和索引的存储顺序完全相同。聚集索引根据索引顺序物理地重新排列了用户插入到表中的数据,因此,每个表只能创建一个聚集索引。聚集索引经常创建在表中经常被搜索到的列或按顺序访问的列上。在默认情况下,主键约束自动创建聚集索引。
非聚集索引
非聚集索引不改变表中数据列的物理存储位置,数据与索引分开存储,通过索引指向的地址与表中的数据发生关系。
非聚集索引没有改变表中物理行的位置,索引可以在以下情况下使用非聚集索引:
一、如果某个字段的数据唯一性比较高
二、如果查询所得到的数据量比较少
聚集索引和非聚集索引的区别:
聚集索引 | 非聚集索引 |
每个表只允许创建一个聚集索引 | 最多可以有249个非聚集索引 |
物理的重排表中的数据以符合索引约束 | 创建一个键值列表,键值指向数据在数据页中的位置 |
用于经常查找数据的列 | 用于从表中查找单个值的列 |
用于从表中查找单个值的列
其他类型索引
除了以上索引,还有以下类型索引:
a、 唯一索引:如果希望索引键都不同,可以创建唯一索引。聚集索引和非聚集索引都可以是唯一索引。
b、 包含新列索引:索引列的最大数量是16个,索引列的字节总数的最高值是900。如果当多个列的字节总数大于900,切又想在这些劣种都包含索引是,可以使用包含性列索引
c、 视图索引:提供视图查询效率,可以视图的索引物理化,也就是说将结果集永久存储在索引中,可以创建视图索引。
d、 XML索引:是与xml数据关联的索引形式,是XML二进制blob的已拆分持久表示形式
e、 全文索引:一种特殊类型的基于标记的功能性功能,用于帮助在字符串中搜索赋值的词
3、 创建索引
语法
create [unique] [clustered | noclustered] index index_name on table_name (column_name ...) [with fillfactor=x]
unique
唯一索引
clustered
聚集索引
noclustered
非聚集索引
fillfactor
填充因子大小,范围在0-100直接,表示索引页填满的空间所占的百分比。
相关阅读 >>
浅析sql server的嵌套存储过程中使用同名的临时表怪像
c#中的sqlcommand命令与dbtransaction事务处理
浅析sql server的分页方式 isnull与coalesce性能比较
解决plsql developer中数据库插入数据乱码问题(ssm项目开发)
更多相关阅读请进入《sql》频道 >>

数据库系统概念 第6版
机械工业出版社
本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。
转载请注明出处:木庄网络博客 » SQL Server 索引和视图详解
相关推荐
评论
管理员已关闭评论功能...