我建立类似这样的存储过程
CREATE PROCEDURE  pro
@var sysname
ASif @var='a'
select * into #mb from mb
else if @var= 'b'
select * into #mb from mb
提示错误2714:数据库中已存在名为'#mb'的对象怎么解决?

解决方案 »

  1.   

    CREATE PROCEDURE  pro
        @var sysname
    AScreate table #mb(
      .....
      )
    if @var='a'
        insert #mb
        select * from mb
    else if @var= 'b'
         insert #mb
        select * from mb
      

  2.   

    CREATE PROCEDURE  pro
        @var sysname
    ASif @var='a'
        select * into temp..mb from mb
    else if @var= 'b'
        select * into temp..mb from mb
      

  3.   

    2楼中稍改一下,temp-->tempdb,2000中的存储过程只支持永久表的滞后名称解析,不支持临时表的
    变通实现可如一楼,亦可将不同条件下的语句分别放在不同的存储过程中