我的一个存储过程中一个参数是表名,在存储过程中,通过这个表名查询出一批数据跟另外一个表做关联查询并返回结果。请问各位高手怎么做?谢谢

解决方案 »

  1.   


    参数是表名的话, 那你存储过程里面的SQL语句必须为动态执行
      

  2.   


    类似下面
    CREATE PROCEDURE PROC_A
    (
       @tbname nvarchar(10)
    )
    as
    declare @sqlstr nvarchar(1000)
    set @sqlstr = 'select * from '+@tbname
    exec(@sqlstr)
      

  3.   


    create procedure poce_dd
    (
       @name varchar(10)
    )
    as
      declare @sql varchar(1000)
      set @sql ='
      select *from '+@name +' A  inner join   ta2 B  on A.id = B.id '
    exec (@sql)