我无法在powershell中使用invoke-sqlcmd。我加载了Chad Miller编写的模块,如下所述:Problems using SQL Server 2008 R2 PowerShell extensions outside of SQLPS
模块加载完好没有错误,并使用get-module按预期显示sqlps。但是,使用get-pssnapin不会显示SqlServerCmdletSnapin100或SqlServerProviderSnapin100
当我输入invoke-sqlcmd时,我收到错误“术语'invoke-sqlcmd'未被识别为cmdlet,函数,脚本文件或可操作程序的名称......”
运行Windows 7 Pro,安装了SQL Server Management Studio Express 2008R2,安装了SQL Server 2008R2管理对象。
感谢您的帮助 乔恩
答案 0 :(得分:4)
我有类似的问题:) 这就是我做的: 从sql文件注册dll:
set-alias installutil $env:windir\microsoft.net\framework\v2.0.50727\installutil
installutil -i "C:\Program Files\Microsoft SQL Server\100\Tools\Binn\Redist\Microsoft.SqlServer.Management.PSProvider.dll"
installutil -i "C:\Program Files\Microsoft SQL Server\100\Tools\Binn\Redist\Microsoft.SqlServer.Management.PSSnapins.dll"
然后你可以检查: get-PSSnapin -registered
现在添加snapins:
Add-PSSnapin SqlServerCmdletSnapin100
Add-PSSnapin SqlServerProviderSnapin100
这对我有用。希望它有所帮助...
对不起我的英文:)
答案 1 :(得分:0)
就我而言,此问题已解决,安装Microsoft®WindowsPowerShell ExtensionsforMicrosoft®SQLServer®2012和Microsoft®SQLServer®2012共享管理对象都包含在Microsoft®SQLServer®FeaturePack中
下载链接:https://www.microsoft.com/en-us/download/confirmation.aspx?id=29065