invoke-sql cmdlet/batchparser.dll not being found



当我尝试调用 invoke-sqlcommand cmdlet 时出现以下错误

"invoke-sqlcmd : 无法加载文件或程序集 'Microsoft.SqlServer.BatchParser, version=14.100.0.0, culture=neutral, PublicKeyToken=89845dcd8080cc91' 或其依赖项之一。这 系统找不到指定的文件。行:1 字符:1">

我使用了导入模块SQLServer。 我的系统上也有SSMS 2017以及Visual Studio 2017 批处理解析器.dll是正确的版本,甚至与错误脚本位于同一目录中,我仍然收到此错误。

即使是像 : 这样的简单命令invoke-sqlcmd -serverinstance 'xxxx' -query "Select @version"失败。

谁能帮我?

我认为您有这个问题,因为您运行的是32位PowerShell。Invoke-SqlCmd 目前不支持 32 位。

  • 删除了此模块的 64 位操作系统限制。注意:Invoke-sqlcmd cmdlet 是唯一在 32 位操作系统上不受支持的 cmdlet。

来源: https://www.powershellgallery.com/packages/Sqlserver/21.0.17279

运行 PowerShell 64 位,然后重试。

最新更新