gpt4 book ai didi

sql-server - 已安装 SQL,但 powershell 未获取 sqlps 命令(如 invoke-sqlcmd)

转载 作者:行者123 更新时间:2023-12-02 22:34:17 34 4
gpt4 key购买 nike

我用chocolatey安装了ms sql server:

choco install SQLServer2012DeveloperEditionWithSP1 -y -f -source 'http://choco.developers.tcpl.ca/chocolatey' -c "$env:WINDIR\temp"

SQL 似乎已在无法正常工作的 powershell 之外安装并运行良好。我可以看到 sqlps 模块:
Get-Module -listavailable

...
ModuleType Version    Name                                ExportedCommands
---------- ------- ---- ----------------

Manifest 1.0 SQLASCMDLETS
Manifest 1.0 SQLPS

不过,这些命令似乎不见了。我没有 invoke-sqlcmd 等。理论上,如果我安装模块,我应该可以访问它们,但是当我尝试 import-module sqlps 但我收到一个关于没有 sqlserver 驱动器的错误:
PS C:\WINDOWS\system32> Import-Module SQLPS
Set-Location : Cannot find drive. A drive with the name 'SQLSERVER' does not exist.
At C:\Program Files (x86)\Microsoft SQL Server\110\Tools\PowerShell\Modules\SQLPS\SqlPsPostScript.ps1:1 char:1
+ Set-Location SQLSERVER:
+ ~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (SQLSERVER:String) [Set-Location], DriveNotFoundException
+ FullyQualifiedErrorId : DriveNotFound,Microsoft.PowerShell.Commands.SetLocationCommand

我认识我小组中的几个人,他们完成了这些步骤,并且确实使正确的 sql ps 设置正常工作。

任何提示或想法都会非常有帮助。谢谢。

最佳答案

再会,

我猜您使用的是 SQL Server 2017,因为这是 2017 年的常见问题,我将在下面解释。我不确定使用的是什么版本,因为这个问题有点老了,并且在 2017 年 5 月 2 日 22:58 被问到

您收到的错误包括基本问题

Set-Location : Cannot find drive. A drive with the name 'SQLSERVER' does not exist.



它并不是说模块“SQLPS”不存在,而是模块“SQLSERVER”不存在

解释是直到 2016 年 SQLPS 模块都包含在 SQL Server 安装中,但我们使用的 PowerShell 模块是“SqlServer”模块。 “SqlServer”模块包含在 SQL Server Management Studio (SSMS) 16.x 中,但如果您使用的是 SSMS 2017 (17.x),那么 'SqlServer' module must be installed from the PowerShell Gallery .

安装它的过程是执行命令:
Install-Module -Name SqlServer

如果你得到像 PackageManagement\Install-Package : The following commands are already available on this system:... 这样的错误

然后您可以使用以下参数强制安装: -Force–AllowClobber
由于我不熟悉你的系统, 我不会建议你做什么或者说你是否应该强制安装,但这是我在大多数情况下可能会这样做的解决方案(根据我在这个线程中注意到的信息)
Install-Module -Name SqlServer -Force –AllowClobber

为了确认该模块是不是,您可以执行以下命令:
Get-Module -Name SqlServer -listAvailable | select Name, ModuleType, Version

使用上面的命令检查您的安装版本,并在以下命令中使用它以导入最新版本(在我写这个答案时版本是 21.0.17279):
Import-Module SqlServer -Version 21.0.17279

就是这样......如果一切顺利,那么您应该能够使用所有 SQL Server PowerShell 命令

关于sql-server - 已安装 SQL,但 powershell 未获取 sqlps 命令(如 invoke-sqlcmd),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43748509/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com