外贸网站知识

常见问题

如何加快数据库信息的查询速度

来源:力洋网络日期:2012-5-26

数据库的信息量一般都比较大,假如你没有管理好它,当你需要查询某个信息的时候速度可能会延迟。下面我就谈谈怎样加快数据库信息的查询速度。第一、在所有的存储过程和触发器的开始处设置SETNOCOUNTON,在结束时设置SETNOCOUNTOFF。

      数据库的信息量一般都比较大,假如你没有管理好它,当你需要查询某个信息的时候速度可能会延迟。下面我就谈谈怎样加快数据库信息的查询速度。
 
     第一、在所有的存储过程和触发器的开始处设置 SET NOCOUNT ON ,在结束时设置 SET NOCOUNT OFF 。无需在执行存储过程和触发器的每个语句后向客户端发送 DONE_IN_PROC 消息。
 
      第二、应尽可能的避免更新 clustered 索引数据列,因为 clustered 索引数据列的顺序就是表记录的物理存储顺序,一旦该列值改变将导致整个表记录的顺序的调整,会耗费相当大的资源。若应用系统需要频繁更新 clustered 索引数据列,那么需要考虑是否应将该索引建为 clustered 索引。
 
      第三、临时表并不是不可使用,适当地使用它们可以使某些例程更有效,例如,当需要重复引用大型表或常用表中的某个数据集时。但是,对于一次性事件,最好使用导出表。
 
 
      第四、应尽量避免在where子句中对字段进行函数操作,这将导致引擎放弃使用索引而进行全表扫描。
 
      第五、如果在 where 子句中使用参数,也会导致全表扫描。因为SQL只有在运行时才会解析局部变量,但优化程序不能将访问计划的选择推迟到运行时;它必须在编译时进行选择。然而,如果在编译时建立访问计划,变量的值还是未知的,因而无法作为索引选择的输入项。
 
      第六、尽量避免向客户端返回大数据量,若数据量过大,应该考虑相应需求是否合理。

关键词标签:力洋外贸网站建设有限公司,数据库

0