摘要: 数据库查询性能优化1.合理使用索引 索引是数据库中重要的数据结构,它的根本目的就是为了提高查询效率。索引的使用原则如下:●对聚集索引使用整型键。另外,在唯一列、非空列或 identity 列上创建聚集索引可以获得性能收益。●在查询经常用到的所有列上创建非聚集索引。●在经常进行连接,但没有指定为外键的列上建立索引,而不经常连接的字段则由优化器自动生成索引。●在频繁进行排序或分组(即进行groupby... 阅读全文
posted @ 2009-03-09 16:39 KevinWang 阅读(789) 评论(0) 推荐(0) 编辑
摘要: 查询速度慢的原因很多,常见如下几种: 1、没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) 2、I/O吞吐量小,形成了瓶颈效应。 3、没有创建计算列导致查询不优化。 4、内存不足 5、网络速度慢 6、查询出的数据量过大(可以采用多次查询,其他的方法降低数据量) 7、锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷)8、sp_lock,sp_who,活动的用户查看,原因是读... 阅读全文
posted @ 2009-03-09 15:16 KevinWang 阅读(195) 评论(0) 推荐(0) 编辑
摘要: SQL Server中解决死锁的新方法介绍数据库操作的死锁是不可避免的,本文并不打算讨论死锁如何产生,重点在于解决死锁,通过SQL Server 2005, 现在似乎有了一种新的解决办法。 将下面的SQL语句放在两个不同的连接里面,并且在5秒内同时执行,将会发生死锁。 use Northwindbegin tran  insert into Orders(CustomerId) values(@#... 阅读全文
posted @ 2009-03-09 12:33 KevinWang 阅读(2215) 评论(0) 推荐(0) 编辑
摘要: SQL Server查询速度慢的原因有很,常见的有以下几种:1、没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) 2、I/O吞吐量小,形成了瓶颈效应。 3、没有创建计算列导致查询不优化。 4、内存不足 5、网络速度慢 6、查询出的数据量过大(可以采用多次查询,其他的方法降低数据量) 7、锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷)8、sp_lock,sp_who,活... 阅读全文
posted @ 2009-03-09 12:31 KevinWang 阅读(721) 评论(0) 推荐(0) 编辑