SQL Server查询速度慢的原因有很多,常见的有以下几种:
1、没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷)
2、I/O吞吐量小,形成了瓶颈效应。
3、没有创建计算列导致查询不优化。
4、内存不足
5、网络速度慢
6、查询出的数据量过大(可以采用多次查询,其他的方法降低数据量)
7、锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷)
8、sp_lock,sp_who,活动的用户查看,原因是读写竞争资源
数据库的结构很重要,表的建立,对需要用到的字段进行建立索引:尽量单表查询。
CREATE INDEX index_name ON table_name (column_name);
多字段查询,建立索引:
CREATE INDEX index_name ON table_name (column_name1,column_name2);
唯一索引:
CREATE UNIQUE INDEX index_name ON table_name (column_name);
数据量大的话还想快速的查询是一个永远不能解决的问题,我们只能尽力让查询速度变快,而不能彻底解决。也就是优化的方案了。可以考虑以下几个方面。对表结构进行优化:看看这个留言表的属性多不多,是不是可以拆成两个表或多个表,减少表的数据量,提高查询速度,也就是横向纵向分割表,减小表的尺寸,但是这种方法要看情况,如果盲目的拆只会更加麻烦;若属性不是很多可以对表中经常查询的属性建立索引,这会加快查询速度。也有可能是程序设计者在开发程序的时候没有用到索引,而不是数据库中没有建索引。有的话就优化索引,优化访问方式,限制结果集的数量。索引应该尽量小,使用字节数量小的属性建索引最好。不要对值域小的列建索引。还可以对查询语句的词法语法进行检查,尽量使用where子句限制返回的数据量,避免表扫描。
以上就是关于用JDBC连接 SQL Server 2012 数据库查询速度慢怎么解决全部的内容,包括:用JDBC连接 SQL Server 2012 数据库查询速度慢怎么解决、高分求教sqlserver 数据库处理变慢、sql数据查询反映很慢等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)