我有以下观点:
CREATE OR ALTER VIEW "ButtonGroup_ButtonNames_view"("ButtonName")
AS
select "ButtonName"
from "ButtonGroupName_ButtonName"
where "ButtonGroupName_ButtonName"."ButtonGroupName" = ':lButtonGroupName'
':lButtonGroupName'
被认为是一个参数,所以在运行时我可以为它设置一个值。
运行应用程序时,出现parameter name not found
错误。我想这不是在parameter
内声明view
的正确方法。反正有可能吗?
感谢。
答案 0 :(得分:0)
现在看来视图是如何工作的。您可以在用于从视图中获取结果的select
查询中提供参数,但视图本身不能包含任何参数。没有任何工具可以将参数传递给不属于查询的视图。
从这样一个"参数化视图"中真的不会有任何优化。无论如何。数据库引擎无法预取结果,因为在您执行查询之前,它不会知道参数值。知道某个列是参数化的,数据库引擎可以在该列上创建索引,但您可以轻松索引基础表中的列。对视图的查询将使用与对表的查询相同的索引。