小编cha*_*har的帖子

如何将表名作为存储过程的输入参数?

我下面有一个小的存储过程.

我将表名作为存储过程的输入参数,以便我计划将数据插入临时表并显示相同的内容.这只是我项目存储过程的一个很小的代码块.

当我编译下面的内容时,它会将select语句中的参数视为表变量并将错误抛出为:

必须声明表变量"@TableName".

SQL:

CREATE PROCEDURE xyz @TableName Varchar(50) 
AS 
BEGIN 
SELECT TOP 10 * INTO #Temp_Table_One 
FROM @TableName 

SELECT * FROM #Temp_Table_One 
END
Run Code Online (Sandbox Code Playgroud)

sql-server stored-procedures table-variable

10
推荐指数
2
解决办法
4万
查看次数