SQL Server 2005 某个表中,其中一列存储的值比较多, 第一次查询很慢,怎么解决?
时间:2011-12-23
来源:互联网
数据库版本: SQL Server 2005
表结构:
CREATE TABLE [dbo].[OGAInfo]
(
[OGA_ID] [varchar] (32) COLLATE Chinese_PRC_CI_AS NOT NULL, --主键
[Tem_Detail] [varchar] (max) COLLATE Chinese_PRC_CI_AS NOT NULL,
[NodesAttrib] [varchar] (max) COLLATE Chinese_PRC_CI_AS NULL
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
其中,基于程序设计的原因(ASP.net C# +SQL Server 2005),Tem_Detail 列字段存储的值很大,存储的为json结构的字符信息,40KB以上,行记录大概为8000条。
在程序的一个页面中,打开的时候,要执行一个查询的存储过程,这个存储过程的其中一条查询语句为:
SELECT Tem_Detail
FROM OGAInfo
WHERE OGA_ID = '9117a14fc56546e1bcf104b55efa67a7'
AND Tem_Detail != ''
这个查询语句,第一次执行的时候,非常慢,要等4-5分钟,由于响应时间太久,导致程序直接报错,错误信息为:System.IndexOutOfRangeException: Cannot find table 0。把报错的页面关闭掉,再次打开这个查询页面,可以打开,但要等待30秒左右,之后打开就在10秒左右。但是,如果等待1个小时以后,再次打开这个查询页面,又会显得非常慢。
如果,重新启动数据库服务,打开这个页面的时候,跟第一次打开一样,会导致程序直接报错。
由于项目原因,无法快速修改Tem_Detail存储的值,请问如何提高第一次查询的速度?怎么去优化数据库,提高效率?
表结构:
CREATE TABLE [dbo].[OGAInfo]
(
[OGA_ID] [varchar] (32) COLLATE Chinese_PRC_CI_AS NOT NULL, --主键
[Tem_Detail] [varchar] (max) COLLATE Chinese_PRC_CI_AS NOT NULL,
[NodesAttrib] [varchar] (max) COLLATE Chinese_PRC_CI_AS NULL
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
其中,基于程序设计的原因(ASP.net C# +SQL Server 2005),Tem_Detail 列字段存储的值很大,存储的为json结构的字符信息,40KB以上,行记录大概为8000条。
在程序的一个页面中,打开的时候,要执行一个查询的存储过程,这个存储过程的其中一条查询语句为:
SELECT Tem_Detail
FROM OGAInfo
WHERE OGA_ID = '9117a14fc56546e1bcf104b55efa67a7'
AND Tem_Detail != ''
这个查询语句,第一次执行的时候,非常慢,要等4-5分钟,由于响应时间太久,导致程序直接报错,错误信息为:System.IndexOutOfRangeException: Cannot find table 0。把报错的页面关闭掉,再次打开这个查询页面,可以打开,但要等待30秒左右,之后打开就在10秒左右。但是,如果等待1个小时以后,再次打开这个查询页面,又会显得非常慢。
如果,重新启动数据库服务,打开这个页面的时候,跟第一次打开一样,会导致程序直接报错。
由于项目原因,无法快速修改Tem_Detail存储的值,请问如何提高第一次查询的速度?怎么去优化数据库,提高效率?
作者: wenhui118 发布时间: 2011-12-23
1.可以考虑对Tem_Detail建立索引.
2.如果是Tem_Detail != '',可以考虑使用len(Tem_Detail) = 0
2.如果是Tem_Detail != '',可以考虑使用len(Tem_Detail) = 0
作者: dawugui 发布时间: 2011-12-23
Tem_Detail建立索引看下能不能快点。
作者: szstephenzhou 发布时间: 2011-12-23
OGA_ID 建立聚集索引 Tem_Detail 建立非聚集索引。
作者: fredrickhu 发布时间: 2011-12-23
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28