Invoke-Sqlcmd cmdlet不可用。可能未安装SQL Server PowerShell组件

时间:2016-12-26 12:41:56

标签: powershell sql-server-2016

我正在尝试使用PowerShell执行sql查询时提到的异常

[ERROR] Invoke-Sqlcmd cmdlet was not available. SQL Server PowerShell components may not be installed.

我想到的奇怪之处在于这条路径$env:PSMODULEPATH。我将路径设置如下

%SystemRoot%\system32\WindowsPowerShell\v1.0\Modules\;C:\Program Files (x86)\Microsoft SQL Server\130\Tools\PowerShell\Modules\;C:\Program Files\WindowsPowerShell\Modules\

如果我只是在SQL Server之前或第一个位置移动以下路径,它就可以正常工作了 C:\Program Files\WindowsPowerShell\Modules\

当我更新时,它的外观如何

%SystemRoot%\system32\WindowsPowerShell\v1.0\Modules\;C:\Program Files\WindowsPowerShell\Modules\;C:\Program Files (x86)\Microsoft SQL Server\130\Tools\PowerShell\Modules\

有没有办法将它移到SQL PS模块路径的第一个或更多位置

1 个答案:

答案 0 :(得分:0)

否则您只需将环境变量设置为外部指向该路径:

Set-Item -Path env:psmodulepath -Value "C:\Program Files\WindowsPowerShell\Modules\;%SystemRoot%\system32\WindowsPowerShell\v1.0\Modules\;C:\Program Files (x86)\Microsoft SQL Server\130\Tools\PowerShell\Modules\;"

这应该完成我们的工作。

希望它有所帮助。