我有一个通过SQL Server代理运行的SQL作业(正在运行SQL Server 2012 Enterprise)。作业的最后一步是运行位于网络共享上的应用程序。不幸的是,我不知道应用程序所在的文件夹的名称(该文件夹是版本号),因此我正在使用PowerShell查找它:
set-location "\\server\companydocuments\MyApp\Application Files\"
$name = Get-ChildItem | sort name -desc | select -f 1 | select name
cd $name.name
& ".\Application.exe"
如果我在SQL Server上打开PowerShell窗口,则可以正常工作。当我在SQL Server代理中运行此命令时,出现以下错误:
A job step received an error at line 1 in a PowerShell script.
The corresponding line is 'set-location "\\server\companydocuments\MyApp\Application Files\'"
我以为这可能是权限问题,所以我尝试在我的凭据(这是测试服务器,不是生产服务器)下运行SQL Server代理,但仍然遇到相同的错误。我也尝试过将网络驱动器映射到共享文件夹而不是UNC路径,但是存在相同的错误。
谁能建议我如何连接到该文件夹?