问题标签 [sqlps]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
8 回答
10783 浏览

powershell - 如何使用 Invoke-Sqlcmd 连接到 SQL Server LocalDB?

sqlcmd.exe来自 SQLServer 2008 和 SQLServer 2012:

通过修改$env:PATHi 强制使用sqlcmd.exeSQL Server 2012:

LocalDB 的默认实例已启动并正在运行,并由当前用户拥有:

(localdb)\v11.0现在,我可以在使用时执行命令sqlcmd.exe

但是当我尝试相同的时候,Invoke-Sqlcmd我得到一个连接错误:

我该怎么做才能Invoke-Sqlcmd连接到lmake (localdb)\v11.0

0 投票
1 回答
385 浏览

sql-server - SQLPS 选项卡完成非常慢

SQLPS 制表符扩展(制表符补全)太慢了,完全无法使用。我的配置有问题吗?我应该以某种方式升级到更高版本吗?是否有某种修复可以使它可用?

相关版本信息:

  • Windows7 64位
  • SQL Server 2008
  • SQL Server 管理工作室 10.0.5512.0
  • SQLPS.exe 文件版本 (10.0.1600.22 ((SQL_PreRelease).080709-1414 )
  • sqlps,$ps版本表:
    • CLRVersion:2.0.50727.5466
    • 构建版本:6.1.7601.17514
    • PS版本:2.0
0 投票
1 回答
1258 浏览

powershell - 如何从 Invoke-Sqlcmd 诊断此异常?

我正在运行以下命令(我能想到的最小的可重现示例):

我收到以下错误:

Invoke-Sqlcmd:找不到适合指定区域性或中性区域性的任何资源。确保“pipeline.resources”在编译时被正确嵌入或链接到程序集“System.Management.Automation”中,或者所有所需的附属程序集都是可加载的并且是完全签名的。在 line:1 char:1 + Invoke-Sqlcmd "select * from sys.databases" | %{ + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidResult : (:) [Invoke-Sqlcmd],MissingManifestResourceException + FullyQualifiedErrorId:ExecutionFailed,Microsoft.SqlServer.Management.PowerShell.GetScriptCommand

累了这个:

  • 使用 ISE 和命令行
  • 提升(“以管理员身份运行”)而不是
  • 针对 SQL 2012 和 SQL 2008
  • 从 Windows 8 和 Server 2008

在所有情况下,结果都是一样的。

为什么以及如何诊断?

0 投票
1 回答
6342 浏览

sql - Powershell - 用户映射 SQL Server 2012

我正在尝试为不同的登录帐户编写用户映射脚本。我已经编写了用户和单个服务器角色的创建脚本,但我不知道如何使用 Powershell 设置用户映射,我还需要设置Database Role membership,特别是,db_backupoperator

有人知道如何用 Powershell 做到这一点吗?

在此处输入图像描述

0 投票
1 回答
441 浏览

sql-server - 如何解决错误 SQLPS 无法初始化?ows

环境:Windows Server 2008 R2 64 位 SQL Server 2008 R2

安装了 Microsoft Windows Management Framework 3.0 以及获得 Powershell 3.0 的先决条件

在服务器 Powershell 提示符上,我得到这个: PS C:\Users\macfarmw> sqlps SQLPS failed to initialize: Could not load type 'Microsoft.PowerShell.Commands.FormatDefaultCommand' from assembly 'Micr osoft.PowerShell.Commands.Utility, Version=3.0 .0.0,文化=中性,PublicKeyToken=31bf3856ad364e35'。PS C:\用户\macfarmw>

我安装的 Powershell 3.0 是否破坏了 SQLPS 实用程序?我可以解决这个问题吗?可以保留 Powershell 3.0 吗?

谢谢,

马修

0 投票
3 回答
948 浏览

c# - Powershell SQLPS模块未在C#中导入

我正在尝试在 C# 中的 Powershell 中执行 SQL 查询。我已经使用 ActiveDirectory cmdlet 成功地做到了这一点,并希望更进一步。

我的第一个问题是,虽然以下格式适用于 ActiveDirectory(和 ISE),但它在 C# 中失败:

我早就将安全设置为无限制,但我得到的错误是:

CmdletInvocationException 未处理

文件 C:\Program Files (x86)\Microsoft SQL Server\110\Tools\PowerShell\Modules\sqlps\Sqlps.ps1 无法加载,因为在此系统上禁用了运行脚本。有关详细信息,请参阅http://go.microsoft.com/fwlink/?LinkID=135170上的 about_Execution_Policies 。

但是,如果我这样运行,我不会收到任何错误,尽管稍后的“Get-Module -all”调用没有显示模块的迹象:

如果我然后尝试导入 ActiveDirectory 模块并调用 Get-Module,它不会显示任何内容。

这里发生了什么?

0 投票
1 回答
566 浏览

powershell - PowerShell 安装其他工具并使用已安装的 cmdlet

我正在像这样的 powershell 脚本中安装一些 MSI 包:

启动进程“Msi_Path”/qn -Wait

这些 MSI 包是:

SQLSysClrTypes.msi、SharedManagementObjects.msi、PowerShellTools.msi(适用于 SQL Server 2012)

在同一个脚本中,安装后,我尝试像这样导入 SqlPs 模块:

导入模块 SqlPs -DisableNameChecking

但我收到了这个错误:

未加载指定的模块“SQLPS”,因为在任何模块目录中都找不到有效文件。

当我打开一个新的 PowerShell 窗口并导入模块时,它就可以工作了。我试图在我的脚本中启动一个新的 PowerShell 进程,如下所示:

Start-Process 'powershell' 'secondScript.ps1' #with Import-Module SqlPs

但我得到了同样的错误。

您有什么想法或解决方法吗?

谢谢你。

0 投票
2 回答
661 浏览

sql - 如何使用 . 在名称中通过设置位置

问题在标题中。我有一个数据库服务器,其中有许多名称中带有句点的数据库(它们是 url,因此我知道哪个数据库与哪个站点相关联,例如 foo.bar.com_content)。当我导航到SQLSERVER:\sql\[server]\default\databases并运行时,get-childitem我可以看到我所有数据库的列表。当我尝试时,cd [database name with period]我收到以下错误:

该错误重复四次,然后是:

我可以对名称中没有句点的同一台服务器上的数据库运行相同的命令并且连接得很好。

我在安装了 SQL Server 2012 工具的 Powershell ISE、Powershell v2.0 中的 Windows 桌面计算机上运行它。远程数据库服务器正在运行 SQL Server 2008r2。

0 投票
1 回答
1173 浏览

powershell - 使用 SQL PowerShell 枚举数据库

我正在使用 PowerShell 4.0 和 SQLPS 插件来处理 SQL Server。

这会输出我在本地拥有的数据库列表,例如:

[Test_1] [DBA] [Test_2]

但是,如果我尝试对 $Database 做一些事情,比如

我收到一个错误:

警告:使用提供者上下文。服务器 = 本地主机。Invoke-Sqlcmd:无法打开登录请求的数据库“[Test_1]”。登录失败。用户 'WIN-MAINV98PDFA\admin' 登录失败。在 line:3 char:5 + Invoke-Sqlcmd -Database $Database -HostName WIN-MAINV98PDFA -Query "select d ... + ~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~ + CategoryInfo : InvalidOperation: (:) [Invoke-Sqlcmd], SqlException + FullyQualifiedErrorId : SqlExectionError,Microsoft.SqlServer.Management.PowerShell.GetScriptCommand

我认为问题归结为括号之间的差异。

作品:

失败:

这似乎应该起作用。我错过了什么?

0 投票
6 回答
16982 浏览

powershell - Restore-SqlDatabase cmdlet 中的 RelocateFile 属性问题

我尝试使用 Restore-SqlDatabase cmdlet 还原数据库。我需要重新定位文件,但出现以下错误

我的 powershell 代码如下所示