DECLARE @A VARCHAR(30)
SELECT @A='TABLE1'
SELECT @A

解决方案 »

  1.   

    from子句不能用变量,可以这样
    declare @a varchar(50)
    select @a=select * from tablename
    execute @a
      

  2.   

    declare @a varchar(50)
    select @a='select * from table1'
    execute @a
      

  3.   

    declare @a varchar(50)
    select @a='select * from table1'
    execute @a
      
      

  4.   

    呵呵,不行啊,nononono兄,提示:未找到存储过程。
    我用的是sql server2000中文版。
      

  5.   

    declare @a varchar(50)
    select @a='select * from table1'
    execute (@a)
      

  6.   

    Execute a stored procedure:
    [[EXEC[UTE]] 
        {
            [@return_status =]
                {procedure_name [;number] | @procedure_name_var
        }
        [[@parameter =] {value | @variable [OUTPUT] | [DEFAULT]] 
            [,...n]
    [WITH RECOMPILE]Execute a character string:
    EXEC[UTE] ({@string_variable | [N]'tsql_string'} [+...n])
      

  7.   

    存储过程里可以把表名用变量吗?我知道sybase是不可以的。