Tuesday, January 25, 2011

SQL Server View VS Store Procedure (ZT)

 

1.

 

视图(regular view)不会对性能提升有什么帮助的,考虑性能因素的话,应该选择存储过程。
视图只不过是存储在sql server上的select语句罢了,当对视图请求时,sql server会像执行一句普通的select语句那样的执行视图的select语句,它的性能并不像人们想象得那么出色。
而存储过程在编译后可以生成执行计划,这使得每次执行存储过程的时候效率将会更高,这是存储过程,另外台提交参数的时候,使用存储过程将会减少网络带宽流量,这是存储过程相对于普通的sql语句在性能上的最大的优势。
当然,从sql   server2000/7.0版本开始普通的sql查询在执行后,它的执行计划将会被放入缓存中,以便下次执行的时候能够获得较高的性能,但是很久不使用的查询计划将会从高速缓存清理出去。

总之,从性能上来说存储过程要优于视图。

 

2.

 

为视图创建聚簇索引,只有这样才会显著地提高系统的性能。当在视图上创建了聚簇索引后,视图的结果集与有聚簇索引的表的数据集一样是存储在数据中的。

0 Comments:

Post a Comment

<< Home