SELECT @RETURU_VAR=COUT(@COLUMNS_NAME1) FROM @TABLE_NAME WHERE @COLUMNS_NAME1=@VAR1 AND @COLUMNS_NAME2=@VAR2
其中的@RETURU_VAR,@COLUMNS_NAME1,@TABLE_NAME ,@VAR1 ,@COLUMNS_NAME2,=@VAR2 都要通过参数传递,可以实现吗?
...全文
246打赏收藏
在PB中存储过程的参数可以传递表名和列名吗?
SELECT @RETURU_VAR=COUT(@COLUMNS_NAME1) FROM @TABLE_NAME WHERE @COLUMNS_NAME1=@VAR1 AND @COLUMNS_NAME2=@VAR2 其中的@RETURU_VAR,@COLUMNS_NAME1,@TABLE_NAME ,@VAR1 ,@COLUMNS_NAME2,=@VAR2 都要通过参数传递,可以实现吗?
create procedure p1
@COLUMNS_NAME1 varchar(100),
@TABLE_NAME varchar(100),
@VAR1 varchar(100),
@COLUMNS_NAME2 varchar(100),
@VAR2 varchar(100),
@RETURU_VAR int output
as
declare @s varchar(8000)
set @s = N'SELECT @RETURU_VAR=COUNT('+@COLUMNS_NAME1+') FROM '+@TABLE_NAME+' WHERE '+@COLUMNS_NAME1+'='+@VAR1+' AND '+@COLUMNS_NAME2+'='+@VAR2
exec sp_executesql @s ,N'@RETURU_VAR int output'@RETURU_VAR output
go