Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server PowerShell v5.1-加载SqlServer模块不会加载读取SqlTableData或写入SqlTableData,而是加载所有其他命令_Sql Server_Powershell_Windows Server 2012 R2 - Fatal编程技术网

Sql server PowerShell v5.1-加载SqlServer模块不会加载读取SqlTableData或写入SqlTableData,而是加载所有其他命令

Sql server PowerShell v5.1-加载SqlServer模块不会加载读取SqlTableData或写入SqlTableData,而是加载所有其他命令,sql-server,powershell,windows-server-2012-r2,Sql Server,Powershell,Windows Server 2012 R2,在我的Windows Server 2012 R2服务器上,与我的SQL Server服务实例运行的服务器相同,我已升级到PowerShell v5.1。我继续加载SqlServer模块v21.1.18121。除了读取SqlTableData和写入SqlTableData之外,所有命令都可以正常加载。最可恶的事!当我在Win10开发框中加载相同的SqlServer模块时,所有命令都存在。我怀疑可用的.Net framework或类似的版本有问题,或者与SQL Server模块发生冲突。有人对此有

在我的Windows Server 2012 R2服务器上,与我的SQL Server服务实例运行的服务器相同,我已升级到PowerShell v5.1。我继续加载SqlServer模块v21.1.18121。除了读取SqlTableData写入SqlTableData之外,所有命令都可以正常加载。最可恶的事!当我在Win10开发框中加载相同的SqlServer模块时,所有命令都存在。我怀疑可用的.Net framework或类似的版本有问题,或者与SQL Server模块发生冲突。有人对此有想法吗?

SqlServer模块随SqlServer安装一起提供,主题将采用不同的版本

SQL Server上的模块位置

(Get-Module -l SqlServer).path
 -> C:\Program Files\WindowsPowerShell\Modules\SqlServer\SqlServer.psd1
PowerShell库中的模块位置

(Get-Module -l SqlServer).path
-> C:\Program Files\WindowsPowerShell\Modules\SqlServer\21.0.17279\SqlServer.psd1

您可以强制PowerSell从特定位置加载模块

Install-Module -Name SqlServer
Import-Module -Name (Get-Module -l SqlServer).path -Verbose

我刚刚遇到了同样的问题。我尝试了很多方法,但我认为问题源于将模块SQLPS与SqlServer模块一起安装。(SQLPS是sqlserver的旧版本)

我使用的步骤:(可能有点过度)

  • 关闭所有可能引用Powershell的应用程序 模块。对我来说,这个列表包括Visual Studio、SSMS、SQL代理、, 当然还有所有Powershell cmd和/或IDE
  • 打开管理员PowerShell命令shell
  • 执行:
    卸载模块sqlps
    卸载模块sqlserver
  • 检查Powershell模块文件夹,确保已清除模块。 要查看的地方是:
    
    ls“c:\program files\WindowsPowerShell\Modules”
    文件夹“sqlps”和“sqlserver”都应丢失或为空
  • 现在重新安装sqlserver模块:
    
    安装模块sqlserver
  • 检查您是否具有写入SqlTableData:
    
    Get命令-模块sqlserver
  • 如果您怀疑自己在版本控制方面有错误:我已经尝试并测试了sqlserver模块版本:21.1.18218和21.0.17099