索引视图无效?

realgz 2008-05-26 07:09:07

create --drop

table x(a int,b int ,c int )

go


create --drop
view v_test
with schemabinding
as
select a,b ,count_big(*) c from dbo.x group by a,b

go

create unique clustered index x on v_test(a,b)

go

select * from v_test


2005里貌似完全不工作。
看查询计划每次都报 table scan。。。。。。。。
于是很怀疑,在2000上试了下,mssql 2000 里索引视图工作正常。

why ? 难道是我和sql server 2005不兼容?
...全文
349 29 打赏 收藏 转发到动态 举报
写回复
用AI写文章
29 条回复
切换为时间正序
请发表友善的回复…
发表回复
realgz 2008-05-27
  • 打赏
  • 举报
回复
小楼兄:不用了。

我原来装的standard版本实例名是 s2005,一开始是升级成enterprise版本,结果升了几小时没升上去被我取消了,再安装一个sql2005的实例居然报的还是standrad版本,不过我再装一个s2005ent的实例那就是enterprise版本了。

灵异,不过懒得研究。
realgz 2008-05-27
  • 打赏
  • 举报
回复
cd1 就够了我只用 database
zhanghaisong 2008-05-27
  • 打赏
  • 举报
回复
USE tempdb;

GO

IF OBJECT_ID(‘dbo.V1’) IS NOT NULL

DROP VIEW dbo.V1;

GO

IF OBJECT_ID(‘dbo.T1’) IS NOT NULL

DROP TABLE dbo.T1;

GO

CREATE TABLE dbo.T1

(

keycol INT NULL,

datacol VARCHAR(10) NOT NULL

);

GO

CREATE VIEW dbo.V1 WITH SCHEMABINDING

AS

SELECT keycol FROM dbo.T1 WHERE keycol IS NOT NULL;

GO

CREATE UNIQUE CLUSTERED INDEX idx_uc_keycol ON dbo.V1(keycol);
realgz 2008-05-27
  • 打赏
  • 举报
回复
昨天通过bt下载了一个,看文件名和小楼兄是一样了不过安装了后:



Microsoft SQL Server 2005 - 9.00.1399.06 (Intel X86)
Oct 14 2005 00:33:37
Copyright (c) 1988-2005 Microsoft Corporation
Standard Edition on Windows NT 5.2 (Build 3790: Service Pack 2)

小楼兄可否我给你个ftp 帮我上传过去?我知道我要求有点过分,不过我是一失足成千古恨啊,没有企业版就要改程序了。

utpcb 2008-05-27
  • 打赏
  • 举报
回复
下载企业版建议到讯雷下
dobear_0922 2008-05-27
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 dobear_0922 的回复:]
我这边测试结果也是Table scan
[/Quote]

OS:Vista Ultimate
select @@version

/*
Microsoft SQL Server 2005 - 9.00.2047.00 (Intel X86)
Apr 14 2006 01:12:25
Copyright (c) 1988-2005 Microsoft Corporation
Standard Edition on Windows NT 6.0 (Build 6000: )

*/
Limpire 2008-05-27
  • 打赏
  • 举报
回复
啊,抱歉!

我没留到你贴里的留言,还好你解决问题了,呵呵!
nzperfect 2008-05-26
  • 打赏
  • 举报
回复
[Quote=引用 18 楼 realgz 的回复:]
索引视图是和分区表什么地方一样了?
[/Quote]

sorry 我想成分区视图了 哎,被人虐晕了
Limpire 2008-05-26
  • 打赏
  • 举报
回复
都散分

另我只测试了企业版和Express,Express版table scan可以理解,毕竟是免费的,但标准版……


我只有这两个版,其它版没法测试,要不等等其它朋友的测试。
Limpire 2008-05-26
  • 打赏
  • 举报
回复
http://www.niuguo.net/thread-1444906-1-1.html
realgz 2008-05-26
  • 打赏
  • 举报
回复
等我装上企业版就给小楼兄分数
realgz 2008-05-26
  • 打赏
  • 举报
回复
索引视图是和分区表什么地方一样了?
nzperfect 2008-05-26
  • 打赏
  • 举报
回复

这倒没注意过,我的环境都是企业版.
用索引视图不如用分区表方便,我用的是分区表,个人意见。
realgz 2008-05-26
  • 打赏
  • 举报
回复
忍不住靠下。。。。。
楼上有没企业版下载地址?
Limpire 2008-05-26
  • 打赏
  • 举报
回复
select @@version
Microsoft SQL Server 2005 - 9.00.3042.00 (Intel X86) Feb 9 2007 22:47:07 Copyright (c) 1988-2005 Microsoft Corporation Express Edition on Windows NT 5.2 (Build 3790: Service Pack 2)

又测试一下,在这个版本下,是table scan
realgz 2008-05-26
  • 打赏
  • 举报
回复
企业版?索引视图不会成为企业版功能了吧?
realgz 2008-05-26
  • 打赏
  • 举报
回复
另外注意下 我在select 语句里加 with(index(...)) 也没有任何效果 汗
Limpire 2008-05-26
  • 打赏
  • 举报
回复
我在这个环境下测试,没问题。
Limpire 2008-05-26
  • 打赏
  • 举报
回复
OS:
Windows Server 2003

SQL:
select @@version
Microsoft SQL Server 2005 - 9.00.3054.00 (Intel X86) Mar 23 2007 16:28:52 Copyright (c) 1988-2005 Microsoft Corporation Enterprise Edition on Windows NT 5.2 (Build 3790: Service Pack 2)

select @@servername
KEN-DD9854DFC3A\SQL2005
realgz 2008-05-26
  • 打赏
  • 举报
回复
对了 操作系统全部是sp2的。
加载更多回复(9)

6,129

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 新技术前沿
社区管理员
  • 新技术前沿社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧