DELETE FROM @YISFKZBB_DATE_STEP_NAME
ELSE 
    BEGIN
         SELECT * INTO @YISFKZBB_DATE_STEP_NAME FROM _Yisfkzbb_Date_Step
         DELETE FROM   @YISFKZBB_DATE_STEP_NAME
    END
必須用動態SQL
declare 
v_sql varchar(800)
set v_sql='DELETE FROM '+@YISFKZBB_DATE_STEP_NAME
exec(sql)

解决方案 »

  1.   

    所有操作表等对象不可以用变量代替,也就是说
    ==================================================
    select * from table1 --正确
    -------------------------------
    declare @@a varchar(100)
    set @@a='table1'
    select * from @@a  --错误,不能识别@@a,因为这会将字串'@@a'做为了一个表或视图名去搜寻资料。
      

  2.   

    存储过程中,变量不能直接放在sql语句中
    需用exec('DELETE FROM '+@YISFKZBB_DATE_STEP_NAME)