You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用PowerShell执行Invoke-SqlCmd报错:SQLPS模块无法加载求助

PowerShell Invoke-SqlCmd 加载SQLPS模块失败排查步骤

核心排查步骤

  • 手动导入模块并定位错误
    执行以下命令获取详细加载日志:

    Import-Module SQLPS -Verbose -Force
    

    根据报错信息判断问题:

    • 若提示“模块不存在”:检查SQL Server Express安装时是否勾选了管理工具 - 完整或PowerShell模块组件,未安装的话重新运行SQL Server安装程序补充安装。
    • 若提示路径问题:执行$env:PSModulePath查看环境变量,确认是否包含SQLPS模块路径(通常为C:\Program Files (x86)\Microsoft SQL Server\[版本号]\Tools\PowerShell\Modules,版本号如150对应SQL Server 2019)。
  • 验证SQL Server版本与模块路径匹配
    先确认本地SQL Server Express版本:

    sqlcmd -S localhost\sqlexpress -Q "SELECT @@VERSION"
    

    根据版本号找到对应模块路径,直接指定路径导入:

    # 示例:SQL Server 2019对应路径
    Import-Module "C:\Program Files (x86)\Microsoft SQL Server\150\Tools\PowerShell\Modules\SQLPS"
    
  • 检查PowerShell执行策略与权限

    1. 查看当前执行策略:
      Get-ExecutionPolicy
      
    2. 若为Restricted,修改为RemoteSigned(需管理员权限):
      Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
      
    3. 确保以管理员身份运行PowerShell,避免权限不足导致模块加载失败。

推荐替代方案:使用SqlServer模块

SQLPS为旧版模块,微软官方推荐使用SqlServer模块,操作步骤:

  1. 安装模块(首次运行需允许NuGet包源):
    Install-Module SqlServer -Scope CurrentUser
    
  2. 安装完成后直接执行Invoke-SqlCmd命令,参数与SQLPS版本完全兼容。

验证修复结果

执行以下命令确认模块加载与命令可用性:

Get-Module
Get-Command Invoke-SqlCmd

内容的提问来源于stack exchange,提问作者dede kyuti

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 20:13:13