exec   master..xp_cmdshell   'del   d:\a.txt' 

解决方案 »

  1.   


    --如
    exec  master..xp_cmdshell   'del   e:\2007.xls' --楼主忘了master,我测试了可以的
      

  2.   

    exec  master..xp_cmdshell   'del   e:\2007.xls'另外,你当前用户是否有权限呀
      

  3.   

    默认情况下,只有 sysadmin 固定服务器角色的成员才能执行此扩展存储过程
      

  4.   

    --写个动态的给你
    declare @filename varchar(100),@s varchar(100)
    set @filename='e:\mrp.xls'
    set @s='master..xp_cmdshell ''del '+@filename+' '' '
    exec (@s)/*
    output                                                                                                                                                                                                                                                          
    --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 
    NULL(所影响的行数为 1 行)
    */
      

  5.   

    我用的不是SA登录,一个权限非常低的账户(只有数据表读写权限和存贮过程执行权限),但又需要执行xp_cmdshell 所以采用了代理帐户
    SQLSERVER的两个服务(SQLSERVER和SQLSERVERAGENT也是代理帐户启动的)
      

  6.   


    我也试了,随便在那个库,都可以运行 exec  xp_cmdshell   'del   e:\2007.xls' 楼主是没有权限,建议赋权或者用sa登录
      

  7.   

    代理帐户属于SYSADMIN,我估计是操作系统权限问题