在视图上使用存储过程的任何优势?

时间:2011-02-15 09:49:14

标签: sql sql-server stored-procedures

我有一个执行相当复杂的SELECT语句的存储过程。存储过程接受查询中使用的参数:

ALTER PROCEDURE [dbo].[GetConnections]
    @equipmentId int,
    @equipmentPortNum int
AS
    SELECT ..SELECT QUERY HERE..
END

我正在考虑将其更改为视图,并在调用时过滤视图:

SELECT * from ConnectionsView Where EquipmentID = XXX and EquipmentPortNum = YYY

我的问题是:是否有任何优势 - 尤其是性能?

由于我将从ORM调用视图,因此查询将具有参数化过滤器选项并导致缓存的执行计划,这意味着(除非我错了)存储过程将不再具有更高的性能。查看 - 这是正确的吗?

1 个答案:

答案 0 :(得分:0)

重复..我自己提出的一个问题Here

另一个Here由Roberto Sebestyen提出

我希望你能在这些中找到答案..