我需要从spCopyNetworkService SQL过程动态命名表

时间:2013-07-05 01:36:46

标签: c# sql

ALTER PROC spCopyNetworkService
@TableName nvarchar(50)
AS
   EXEC('SELECT * FROM ClientGroups INTO ' + @TableName + '
FROM ClientGroups)');

我正在使用此程序

Running [dbo].[spCopyNetworkService] ( @TableName = 967ea4c-dc38-4d30-a455-a2c1b17d3a83 ).

我收到此错误

  

关键字“INTO”附近的语法不正确。

     

没有行影响。
  (0行返回)
  @RETURN_VALUE = 0

完成了[dbo]。[spCopyNetworkService]。

我刚给它传了一个值,我得到了这个错误,所以它保存了程序,但它没有工作

2 个答案:

答案 0 :(得分:0)

EXEC('select DATAFIELD_VALUE_HERE into [' + @TableName + ']
from ClientGroups)');

答案 1 :(得分:0)

尝试:

CREATE PROC spCopyNetworkService @TableName nvarchar(50) AS
BEGIN

SET @sql = 'INSERT INTO ' + @TableName ' SELECT FROM ClientGroups 
WHERE (DATAFIELD_VALUE_HERE)'
EXEC @sql

END