我的存储过程是这样的
create procedure p_Insert
@para_tableName varchar(50),
@para_Text ntextas
   insert into @para_tableName
   values(@para_Text)
go这个 @para_tableName 是一个临时表名称,由调用程序提供,但是insert语句在这里不能使用@para_tableName这个变量,请问我该怎么写?

解决方案 »

  1.   

    create procedure p_Insert
    @para_tableName varchar(50),
    @para_Text ntextas
    exec('insert into '+@para_tableName+' values('''+@para_Text+''')')
    go
      

  2.   

    我试过这个方法,但是如果我的存储过程要求有一个返回值的话,也就是这样:
    create procedure p_Insert
    @para_tableName varchar(50),
    @para_Text ntext,
    @para_reInfo int OutPut
    as
       insert into @para_tableName
       values(@para_Text)
    go那请问我要是使用exec的话,怎么设置@para_reInfo的返回值?