d:\file\a.bat 有一个a批处理文件,
现在需要在存储过程中最后一步执行调用a.bat
SQL怎么写?

解决方案 »

  1.   

    exec xp_cmdshell 'd:\file\a.bat' ...
      

  2.   

    xp_cmdshell这个东西安全性很差,另外如果执行需要很高的权限.
      

  3.   


    exec master..xp_cmdshell 'cmd.exe /c d:\file\a.bat'
    -- 默认情况下,xp_cmdshell 只有 sysadmin 服务器角色成员才可以执行。
    -- 并且在 SQL 2005 及以上版本中,默认禁止执行 xp_cmdshell。需要手动打开,
    EXEC sp_configure 'show advanced options', 1
    GO
    RECONFIGURE
    GO
    EXEC sp_configure 'xp_cmdshell', 1
    GO
    RECONFIGURE
    GO-- 建议在 SQL 2005 中,批处理的功能通过编写 CLR 存储过程实现。