数据库试图和索引的创建与使用

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

索引主要分为:
聚集索引:聚集索引是指表中数据行的物理存储顺序与索引顺序完全相同
非聚集索引:非聚集索引不改变表中数据行的物理存储位置,数据与索引分开存储,通过索引指向的地址与表中的数据发生关系
每个表中只允许有一个聚集索引,最多可以有249个非聚集索引
聚集索引用于经常查找的数据的列,非聚集索引用于查找单个值的列
表中有主键会自动生成聚集索引
判断是否存在索引index_name,如果存在则删除
if exists(select * from sys.indexes where name='index_name')
drop index index_name
创建索引:
create [unique] [clustered/nonclustered]
index index_name
on table_name(列_name)
[with fillfactor=x]
fillfactor 填充因子:指定1-100之间的值,表示索引页填充的百分比
删除索引:
drop index table_name.index_name
使用索引:
select * from stuinfo with(index=index_name) where...
二、视图
视图是一张虚拟表,
视图中并不存放数据,存储的是查询语句
定义视图的查询不能包含compute,compute by,into
定义视图的查询不能包含order by,除非在select 语句的选择列表中还有一个
top
判断是否存在试图view_name,如果存在则删除
if exists(select * from sys.views where name='view_name') drop view view_name
定义视图:
create view view_name[列名,...]
with encryption
as
select 查询语句
go
使用视图:同表的使用方法一致
select * from view_name
视图加密防止信息泄漏,避免他人恶意破坏。

相关文档
最新文档