我编辑了一个backup.bat文件,该backup.bat脚本是可以执行的。backup.bat代码如下:
@echo off
cd /e e:/
set UNAME=sql登录名
set PNAME=sql密码
set SNAME=sql服务器名称
set h=%time:~0,2%
if %time:~0,2% lss 10 h=%time:~1,1%
set bak_filename=%h_123%%time:~3,2%%time:~4,0%
bcp [BackupDB].[dbo].[TestTb] out BackupTb("%bak_filename%").xls -U%UNAME% -P%PNAME% -S%SNAME% -c -b50000希望结合SQL代理作业下可以定时执行该备份,但是作业步骤下命令不识别@echo off,作业失败!SQL脚本.bat

解决方案 »

  1.   

    backup.bat这个最好放在windows的任务计划里面执行了sql作业中实现备份不需用.bat了
      

  2.   


    exec master..xp_cmdshell '[路径]\[文件名].bat'
      

  3.   

    唉!文件backup.bat路径在“D:\SQL”
    作业命令:
    exec master..xp_cmdshell 'D:\SQL\backup.bat'作业失败!
      

  4.   

    D:\SQL是你本机的路径吧? [路径]必须是SQL Server所在服务器Windows上的路径喔.
      

  5.   

    SQL Server 2005 Surface Area Configuration
       Database Engine 
         xp_cmdshell 
           Enable xp_cmdshell 這個需勾上,才能在作業中執行,且批處理文件所在目錄是SQL服務器上的。
    exec master..xp_cmdshell 'C:\Batch\backup.bat'
      
      

  6.   

    我编辑了一个backup.bat文件,该backup.bat脚本是可以执行的。backup.bat代码如下:
    @echo off
    cd /e e:/
    set UNAME=sql登录名
    set PNAME=sql密码
    set SNAME=sql服务器名称
    set h=%time:~0,2%
    if %time:~0,2% lss 10 h=%time:~1,1%
    set bak_filename=%h_123%%time:~3,2%%time:~4,0%
    bcp [BackupDB].[dbo].[TestTb] out BackupTb("%bak_filename%").xls -U%UNAME% -P%PNAME% -S%SNAME% -c -b50000希望结合SQL代理作业下可以定时执行该备份,但是作业步骤下命令不识别@echo off,作业失败!
    解决方案:exec master..xp_cmdshell '[路径]\[文件名].bat'
    谢谢大家帮忙!