问题标签 [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.
sql-server-2012 - ssas 2012 中的 sqlps Invoke-Ascmd 错误处理
在 SSAS 2012 中,我尝试从命令行使用“sqlpls -C Invoke-ascmd -S server -i file.xmla”进行多维数据集处理。即使多维数据集处理失败,因为 sqlps 成功执行,%errorlevel% 仍为 0。任何人都可以帮助我了解如何在 2012 年对 sqlps -C Invoke-ascmd 进行错误处理?
sql - sqlps 事务问题
我编写了一个使用 sqlps 部署 SSAS 表格多维数据集的脚本。部署后,我需要对多维数据集执行几个操作,但如果我尝试访问它,我会收到一条消息,指出多维数据集不存在。但事实上,如果我将操作拆分为两个脚本(部署 -> 退出 sql ps -> 新 sqlps 会话),它确实有效(出于现在无关紧要的原因,我不能这样做)。
似乎 sqlps 会话没有看到它刚刚部署的多维数据集。我想知道是否可以运行刷新命令,或者是否可以在“未提交读取”状态下运行 sqlps。
windows - 导入模块 SqlSp 在 TeamCity 上失败,在本机 PowerShell 中工作
我在将 PowerShell 脚本作为 TeamCity 构建步骤运行时遇到了一个奇怪的问题,尤其是在使用时SqlPs
(尽管我不确定它是否特定于SqlPs
)。
这个单行脚本在 TeamCity 中失败:
出现以下错误:
我很确定我已经正确配置了所有内容,因为如果我从运行 TeamCity 的 CI 服务器本地打开 PowerShell,我可以毫无问题地运行它。
我什至可以运行 TeamCity 从本机 PowerShell 中生成的上述临时脚本文件,它工作得很好。
此外,如果我Get-Module
从本机 PowerShell 执行:
它将从以下位置转储几个系统模块:
C:\Windows\system32\WindowsPowerShell\v1.0\Modules
连同来自以下的 SqlSp 模块:
C:\Program Files\Microsoft SQL Server\110\Tools\PowerShell\Modules
但是当我Get-Module
从 TeamCity 构建中运行相同的程序时,它只会列出系统模块——没有SqlSp
模块。
我认为这可能是权限问题,但是当我以 TeamCity 使用的同一帐户登录本机 PowerShell 时,我仍然没有问题。
我还尝试选择 x86 而不是 x64 来排除这种情况,但无论哪种方式都失败了。
加上"SqlPs"
引号也没有帮助。
sql - 使用 powershell 自动安装 SQL 后,invoke-sqlcmd 失败
我正在使用 Powershell 4 安装 SQL 2014。一切正常,除了最后我有一个函数可以使用 invoke-sqlcmd 从 .sql 文件运行脚本。我收到以下错误:
“术语‘invoke-sqlcmd’未被识别为 cmdlet、函数、脚本文件的名称......”
如果我尝试导入 sqlps 模块,我会得到:
未加载指定的模块“sqlps”,因为在任何模块目录中都找不到有效的模块文件。
但这是踢球者。如果我打开一个单独的 PowerShell 终端,它就可以在那里工作。:/ 并在初始终端中继续失败。
我试图理解为什么会如此,任何帮助将不胜感激。我想避免编写一次重启脚本。
谢谢,丹
sql - 无法使用带有 -InputObject 参数的 SQLPS CmdLet Backup-SQLDatabase
遇到与此处发现的相同超时问题并尝试解决方法后,我发现我收到了错误:
运行简单脚本时:
这发生在我尝试过的三台 Win7 机器上,但脚本在我尝试过的所有服务器(Win2012)上运行良好。三台 Win7 机器混合安装了软件。一个安装了 SQL 2008R2、2012 和 2014,另一个只有 2008R2 和 2012。一个安装了 PS 2.0,另外两个安装了 PS 3.0。服务器再次混合。都安装了 PS 3.0,但有些安装了 SQL2008R2 和 SQL2012,有些只有 SQL2012,而我尝试过的一个只有 SQL2014,但它们都可以工作。唯一一致的区别是操作系统,Win7 与 Win2012,但这对我来说作为一个潜在原因没有多大意义。
错误本身令人困惑,它引用的两种类型是相同的。我已经尝试在运行脚本之前加载特定的 SMO 程序集版本(11 和 12),但这似乎没有帮助。
有任何想法吗?提前致谢。
sql-server - SQL Powershell 错误 - 找不到网络路径
我在我的 SQL 作业中使用 PowerShell 命令来获取给定网络路径中的文件列表。
前任:
我在 SQL Server 中为 PowerShell 创建了代理,并使用凭据来运行此 PowerShell 脚本。
这工作正常,直到我将机器上的 SQL 从 SQL Server 2008 R2 升级到 SQL Server 2014。升级后,相同的 PowerShell 脚本开始抛出“找不到路径,因为它不存在”
请问有什么解决办法吗?(除了用路径指定文件系统提供程序或使用powershell.exe
而不是 sqlps)
供参考:
在升级到 SQL Server 2014 时,我收到了一些与报告服务相关的错误,我忽略了这些错误。
sql-server - 使用 SQLPS 创建差异备份
我使用以下内容创建了一个完整的数据库备份:
我找不到任何地方为差异备份指定正确的 -BackupAction
sql-server - 在 Powershell 中传递查询并访问 SQL Server 数据库
我有一个名为'SQLDatabase'
. 它有许多文件夹,如'System _Database', 'R_Database','ReportServer'
等。
我需要访问'R_Database'
.
现在'R_Database'
有很多文件夹,比如'Storage', 'Security', 'Usage', 'Tables'.
我需要访问'Tables'
.
同样,'Tables'
里面有很多表。我需要访问一个名为 的特定表'DB_Batch'
,并对其进行更新。
我该怎么办?
这是我为连接到 SQL Server 所做的代码,然后是表。但它失败了。
现在我想我需要传递一个查询。我该怎么办?我需要先访问表然后更新它。
我什至写了下面的代码来结束上面的代码,但是因为我卡住了,所以无法测试。
我请求,请帮我解决这个问题。我已经尝试了好几天了。我正在使用 Powershell v2.0
powershell - azure VM 中未加载指定的模块“SQLPS”
我创建了新的 Azure VM,并且我想调用一些 SQL Powershell 命令,例如Import-Module SQLPS -DisableNameChecking
. 我没有在 VM 中安装任何 sql server,因为我想对我的 azure 数据库进行操作。所以我需要为它安装任何 sql server 吗?
powershell - Powershell invoke-sqlcmd :值不能为空。参数名称:服务器实例
我在使用下面概述的方法调用本地数据库时遇到问题。
错误信息
invoke-sqlcmd :值不能为空。参数名称:ServerInstance At C:\filelocation\HealthCheckCombined.ps1:86 char:3 1.invoke-sqlcmd -query $agentquery -serverinstance $servername ... 2.~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidArgument:(:) [Invoke-Sqlcmd],ArgumentNullException + FullyQualifiedErrorId:CannotGetServerInstance,Microsoft.SqlServer.Management.PowerShell.GetScriptCommand
环境
- 服务器 2016 候选人 3
- 服务器 2012
- SQL Server 2014
- SQL Server 2012
- PowerShell 3.0、4.0 和 5.0
目标
我正在尝试通过 PowerShell 对 servers.txt(配置文件)中列出的任何 SQL 实例运行查询。
两个组件-
- 外部配置文件 (servers.txt)
- 包含函数的 PowerShell 脚本,循环以从 servers.txt 创建一个数组并执行该函数。
所以servers.txt的内容看起来像=
这是我导入文本文件并创建函数的部分=
现在我通过格式化导入的变量并在运行函数时循环它们来实现魔法=
迄今为止的发现
- 在函数中提取代码并导入文本文件可以正常工作。没有错误。
- 如果我将脚本更改为仅在循环中显示这些变量,则循环中的 $servername 变量会显示正确的值(test2k16\powershell & test2k16\healthcheck)
我显然错过了一些东西......我已经搜索堆栈和谷歌一天了,但什么也没找到。希望这是我忽略或还不了解 PowerShell 的一些小问题。
提前感谢您的帮助!