当前位置:编程学习 > C#/ASP.NET >>

查询数据库超时


用的是EF,语句如下:   查询其它字段都不死,就是查询内容死掉。
content字段里边存储的是文章1.5万条。
                if (!string.IsNullOrEmpty(content))
                    qry = qry.Where(a => a.Content.Contains(content));       //搜索-内容

请问该怎么做?



下边是错误页面提示:

Timeout 时间已到。在操作完成之前超时时间已过或服务器未响应。

说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 

异常详细信息: System.Data.SqlClient.SqlException: Timeout 时间已到。在操作完成之前超时时间已过或服务器未响应。

源错误: 


行 300:                if (id > 0)
行 301:                    qry = qry.Where(a => a.Id == id);                        //搜索-子增长ID
行 302:                PagedList<Library> pl = qry.OrderByDescending(a => a.Id).ToPagedList(pageIndex, pageSize);
行 303:                
行 304: --------------------编程问答-------------------- 为什么再数据库里面like一下? --------------------编程问答--------------------
引用 1 楼 pgameli 的回复:
为什么再数据库里面like一下?


就是查文章里边有没有某个词,用来做搜索 --------------------编程问答-------------------- 打错了,查询的时候在数据库里like啊,
 qry = qry.Where(a => a.Content.Contains(content));如果有有1W条,开销很大,效率低, --------------------编程问答--------------------
引用 3 楼 pgameli 的回复:
打错了,查询的时候在数据库里like啊,
 qry = qry.Where(a => a.Content.Contains(content));如果有有1W条,开销很大,效率低,


是啊?    那么要进行这样搜索,该怎么办? --------------------编程问答-------------------- --------------------编程问答-------------------- web.config 里面加;Connect Timeout= --------------------编程问答-------------------- 难道这样查询的数据量很大?导致了超时 --------------------编程问答--------------------
引用 6 楼 z_dota 的回复:
web.config 里面加;Connect Timeout=
可以试试这个方法 --------------------编程问答--------------------
引用 7 楼 chen_ya_ping 的回复:
难道这样查询的数据量很大?导致了超时


数据量也不大,就1.5万条, 是不是不能这样进行搜索,是不是要用sql里边的一个全文检索才行 --------------------编程问答-------------------- Content字段做索引了没有。 --------------------编程问答-------------------- --------------------编程问答-------------------- 同样的问题,不知道最后解决了没 --------------------编程问答-------------------- 你是否還有其他的過慮條件?content如果存儲文章內容進去,查詢當然是慢的 --------------------编程问答-------------------- 第一次见别人做搜索用Contions的,Contions效率是非常慢的,可以在网上查查了解一下,
  都是用模糊查询的  使用用右模糊查询不就是做搜索使用吗 --------------------编程问答-------------------- 把SqlConnection的超时时间设长点不就行了? --------------------编程问答-------------------- --------------------编程问答-------------------- 建议用模糊查询 --------------------编程问答-------------------- 看问题应该是数据库设计上的,建议对数据库字段进行索引,如果可以分成多个字段,最好分成多个。 --------------------编程问答-------------------- --------------------编程问答-------------------- 建立索引,优化查询
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,