视图是不可以传递参数的,如果要传参数可以考虑用存储过程等方法来解决。
如,要做一个查询,其中表名是参数。
创建存储过程
create proc p_test
(@tablename varchar(20))
as
declare @sql varchar(2000)
begin
set @sql='select * from '+ @tablename +''
exec (@sql)
end
执行存储过程
exec p_test 'test'
说明,其中在执行存储过程中,exec是执行,p_test是要被执行的存储过程,test是输入参数
视图就是一个表,不能传参,如果需要传参请使用表值函数
创建视图时可以去掉那个条件,将所有记录查出来,当你执行查询的时候,在将条件带上。
select * from viewName where ...