在 sql 服务器中保存带有变量的视图

Save view with variable in sql server

我在 sql server 2008 R2 中设计了一个复杂的视图。类似如下-

SELECT column1,column1 FROM Table WHERE column3=@VarName

我要收藏。但我收到以下消息-

Must declare the scalar variable "@VarName".

有什么帮助吗?

您可以创建函数而不是视图。

create function fntest(@varname varchar(max))
returns table as
Return (
SELECT column1,column1 FROM Table WHERE column3=@VarName
)

视图是类似于 table 的数据库对象,除了它本身不存储数据,例如 table。

就其本身而言,视图限制使用某些元素,如 ORDER BY 子句、参数等...

如果要处理从主代码传递的变量或参数,则使用 user defined functions (UDFs)

Table-valued functions (TVF) 类似于视图,可以在 JOIN clause 的主代码中使用它们,也可以接受参数。