SQL视图v存储过程

时间:2013-08-01 12:37:41

标签: sql stored-procedures views temp-tables

我刚刚开始使用视图加入存储过程,这似乎是使用其他人的结果构建简短查询的简单方法。

在使用此方法之前,依赖于视图是否有任何缺点?我最好继续使用临时表选项吗?

2 个答案:

答案 0 :(得分:0)

主要区别在于视图实际上只存储查询而不是结果(物化视图除外),并且会话结束后视图仍然存在。视图是隐藏复杂性的绝佳方式,但不会使查询运行得比在一个查询中写出整个内容时更快。视图也不会占用存储空间(元数据的数量非常少)。

如果您没有任何要求可以进一步加快查询速度,或者您需要能够在不重新创建后续会话的情况下引用数据,我建议您使用视图。

临时表会存储结果,但仅存储当前会话,因此如果您需要基本查询来加快会话持续时间的进一步查询,这可能很有用。

答案 1 :(得分:0)

事实上,视图主要用于安全性原因,它们也使查询更简单(在某些情况下)。所以它只取决于你在做什么,基于它是否需要存储和其他要求。