powershell - 在 Azure DevOps 发布管道中从 PowerShell 执行 SQLCMD.exe

标签 powershell azure-devops sqlcmd

我正在将我们的部署基础架构移植到 Azure DevOps(以前称为 Visual Studio Team Services),但我遇到了一个我找不到任何好的解决方案的问题。

我们正在使用 EF Core 迁移和 to work around some unrelated issues我们需要在 SQLCmd 中动态包装 SQL 脚本,这很容易使用 PowerShell。

但是,当我们的脚本作为发布管道中的常规 PowerShell 步骤执行时,它会失败,因为 SQLCMD.exe 不可用。并不奇怪 - 但我也找不到任何记录的安装方式。

是否有工具安装程序或一些类似的现成组件可以让我执行调用 SQLCMD.exe(通过 Invoke-SqlCmd)作为 Azure Devops 管道的一部分的 PowerShell 脚本?如果没有,那么最简单的方法是什么?

最佳答案

我自己还没有尝试过,但是您是否允许在托管代理上为当前用户安装 Powershell 模块?因为 Invoke-SqlCmd 是 SqlServer module 的一部分,可以通过以下方式从 Powershell 库安装:

Install-Module -Name SqlServer -Scope CurrentUser

关于powershell - 在 Azure DevOps 发布管道中从 PowerShell 执行 SQLCMD.exe,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52822377/

相关文章:

mysql - 通过 SQLCMD 将 sql 文件从 MySQL 导入到 MS SQL 时语法不正确

powershell - 脚本环境影响父 shell

Azure DevOps - 找不到 Azure Artifacts 设置 - 无法删除继承

sql - 无法从 powershell 正确调用 sqlcmd

azure - 为存储 DevOps 创建 ARM 模板

azure-devops - Rest API 可用于 IBM DOORS NG,类似于 Azure Devops Rest API?

sql-server - 使用 sqlcmd 在 Linux 上的 SQL Server 上创建新数据库

c# - Combobox Itemsource 在设置为单个项目集合时抛出异常

powershell - 为什么在执行 Invoke-sqlcmd 时工作目录会发生变化?

linux - 管道文本到外部程序附加一个尾随换行符