--try
grant xp_cmdshell,'bulk insert' on database to username

解决方案 »

  1.   

    use master
    go
    sp_addlogin 'aa','aa'
    sp_adduser 'aa','ss'
    grant exec on  dbo.xp_cmdshell  to ss 
    当用户不是 sysadmin 组的成员时,xp_cmdshell 将模拟使用 xp_sqlagent_proxy_account 指定的 SQL Server 代理程序的代理帐户。如果代理帐户不能用,则 xp_cmdshell 将失败重置 SQLAgentCmdExec 权限 
    展开服务器组,然后展开服务器。
    展开"管理",右击"SQL Server 代理程序",然后单击"属性"命令。
    单击"作业系统"选项卡。
    在"非系统管理员作业步骤代理帐户"下,清除"只有具有系统管理员特权的用户才能执行 CmdExe 和 ActiveScripting 作业步骤"复选框,然后单击"重置代理帐户"按钮。 
    在运行非系统管理员的用户所拥有的作业时,应键入 SQL Server 代理程序要使用的用户帐户的用户名、密码和域。 
      

  2.   

    下面的示例将用户aa 添加到bulkadmin固定服务器角色中。
    EXEC sp_addsrvrolemember 'aa', 'bulkadmin'