sql建视图索引

sql建视图索引,第1张

创建索引视图或对参与索引视图的表中的行进行 *** 作时,有

7

SET

选项必须指派特定的值。SET

选项

ARITHABORT、CONCAT_NULL_YIELDS_NULL、QUOTED_IDENTIFIER、ANSI_NULLS、ANSI_PADDING

ANSI_WARNING

必须为

ON。SET

选项

NUMERIC_ROUNDABORT

必须为

OFF

可以,试试我的语句,前两天刚用过

建视图稍微有点不同,语句如下:

create view 视图名 with schemabinging as

select 列名 from dbo.表名 where 条件语句

(说明:“dbo.表名”前面的“dbo.”是不能省略的)

建索引:

create index 索引名 on 表名

(视图的某个列名 desc/asc)

在视图上创建索引是有一定的限制的。如楼主所说,要在视图上创建索引,视图定义的时候要包含WITH

SCHEMABINDING选项,另外必须在视图上创建一个唯一聚集索引以后才可以创建非聚集索引。

写了个例子楼主看一下

CREATE

TABLE

dbo.Test(a

int,b

int)

GO

CREATE

VIEW

vTest

WITH

SCHEMABINDING

AS

SELECT

a,b

FROM

dbo.Test

GO

CREATE

UNIQUE

CLUSTERED

INDEX

IX_vTest_a

ON

vTest(a)

--注意,由于是唯一性索引,如果基表Test的a列包含重复值的话索引是不能创建成功的

GO

--再创建一个非聚集索引

CREATE

INDEX

IX_vTest_b

ON

vTest(b)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11745711.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存