我们可以将参数传递给 SQL 中的视图吗?

我们可以将参数传递给 Microsoft SQL Server 中的视图吗?

Can we pass a parameter to a view in Microsoft SQL Server?

我尝试通过以下方式创建视图,但它不起作用:

I tried to create view in the following way, but it doesn't work:

create or replace view v_emp(eno number) as select * from emp where emp_id=&eno;

推荐答案

如前所述,您不能.

一个可能的解决方案是实现一个存储函数,例如:

A possible solution would be to implement a stored function, like:

CREATE FUNCTION v_emp (@pintEno INT)
RETURNS TABLE
AS
RETURN
   SELECT * FROM emp WHERE emp_id=@pintEno;

这允许您将其用作普通视图,使用:

This allows you to use it as a normal view, with:

SELECT * FROM v_emp(10)

相关文章