--问题,用脚本创建了下面的作业,然后添加步骤时遇到的奇怪现象
大家帮忙测试一下(我这是sql 2000 +SP4)
  exec   msdb..sp_add_job   @job_name='ABCD差异备份9'   --.分析通过  --创建作业步骤1 
  exec   msdb..sp_add_jobstep   @job_name='ABCD差异备份9',   
                  @step_name   =   '数据处理',   
                  @subsystem   =   'TSQL',   
                  @database_name='ABCD',   
                  @command   =   'USE Master
GO BACKUP LOG ABCD  WITH NO_LOG GO 

USE ACME; GO
DBCC SHRINKFILE (N''ABCD_log'',0,TRUNCATEONLY);
 GO;
USE Master;
GO; declare @str varchar(100);
 set @str=''F:\Buckup温控\温控数据DiffBak''+replace(replace(replace(convert(varchar,getdate(),20),''-'',''''),'' '',''''),'':'','''')+''.diff'';
 BACKUP DATABASE [ABCD] TO DISK=@str
 WITH DIFFERENTIAL,RETAINDAYS=8,NOFORMAT,NOINIT,
 NAME=N''ABCD差异备份'',SKIP,NOREWIND,
 NOUNLOAD,STATS=10
 GO',   
                  @retry_attempts   =   5,   --重试次数   
                  @retry_interval   =   5     --重试间隔   
    --.分析没有通过,只是在 @command中加了一个回车
  --创建作业步骤2  
  exec   msdb..sp_add_jobstep   @job_name='ABCD差异备份9',   
                  @step_name   =   '数据处理',   
                  @subsystem   =   'TSQL',   
                  @database_name='ABCD',   
                  @command   =   'USE Master
GO
 BACKUP LOG ABCD  WITH NO_LOG GO
 
USE ACME; GO
DBCC SHRINKFILE (N''ABCD_log'',0,TRUNCATEONLY);
 GO;
USE Master;
GO; declare @str varchar(100);
 set @str=''F:\Buckup温控\温控数据DiffBak''+replace(replace(replace(convert(varchar,getdate(),20),''-'',''''),'' '',''''),'':'','''')+''.diff'';
 BACKUP DATABASE [ABCD] TO DISK=@str
 WITH DIFFERENTIAL,RETAINDAYS=8,NOFORMAT,NOINIT,
 NAME=N''ABCD差异备份'',SKIP,NOREWIND,
 NOUNLOAD,STATS=10
 GO',   
                  @retry_attempts   =   5,   --重试次数   
                  @retry_interval   =   5     --重试间隔   
    
    

解决方案 »

  1.   

    哎,颜色标记无效啊,区别在这里,
    @command   = 'uSE Master
    GO BACKUP LOG ABCD  WITH NO_LOG GO @command   = 'USE Master
    GO
     BACKUP LOG ABCD  WITH NO_LOG GO
      

  2.   

    只是在 @command中加了一个回车
    这个不影响的.
      

  3.   

    好像把这个去掉就不报错了[color=#0000FF]
      

  4.   

    正常情况应该是不影响才对
    刚才测试 无枪狙击手 的方法[ 把go 换成 ;] 可以通过
    所有单独行中只有go的情况下,后面加';',也可以通过