sql - SqlAzureDacpacDeployment 中 SqlAdditionalArguments 的语法是什么

标签 sql sql-server azure devops dacpac

我正在尝试在 Azure DevOps 中运行 SqlAzureDacpacDeployment 来执行 sql 文件并传递变量。

我已经使用 $(Database) 在 sql 文件中定义了变量。

USE '$(Database)'
GO
    SELECT name FROM dbo.names where name = '$(Name)'
GO

下面的yaml定义,我不知道如何放置SqlAdditionalArguments,下面的一个不起作用

- task: SqlAzureDacpacDeployment@1
      displayName: 'Run SQL'
      inputs:
        azureSubscription: 'test'
        AuthenticationType: servicePrincipal
        ServerName: 'database.windows.net'
        DatabaseName: dev
        deployType: SqlTask
        SqlFile: '$(Agent.BuildDirectory)/s/scripts/SqlNames.sql'
        SqlAdditionalArguments: -Database='dev' -Name='test123'

SqlAdditionalArguments 中变量的语法是什么

最佳答案

您可以像下面描述的那样实现它:

存在以下文件scripts\test.sql,内容如下:

SELECT $(MYVAR1) AS Var1, $(MYVAR2) AS Var2

您可以从提供参数值的文件执行 SQL

对于 Azure SQL,如下所示:

- task: SqlAzureDacpacDeployment@1
  inputs:
    azureSubscription: MyServiceConnection
    AuthenticationType: 'servicePrincipal'
    ServerName: MyServerName
    DatabaseName: MyDatabaseName
    deployType: 'SqlTask'
    SqlFile: '$(Build.SourcesDirectory)\scripts\test.sql'
    SqlAdditionalArguments: -Variable "MYVAR1='String1'", "MYVAR2='String2'"

对于像这样的机器上的 SQL Server:

- task: SqlDacpacDeploymentOnMachineGroup@0
  inputs:
    TaskType: 'sqlQuery'
    SqlFile: '$(Build.SourcesDirectory)\scripts\test.sql'
    ServerName: '(localdb)\MSSQLLocalDB'
    DatabaseName: 'master'
    AuthScheme: 'windowsAuthentication'
    AdditionalArgumentsSql: -Variable "MYVAR1='String1'", "MYVAR2='String2'"

关于sql - SqlAzureDacpacDeployment 中 SqlAdditionalArguments 的语法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71298082/

相关文章:

Azure 数据工厂 - Oracle 源性能糟糕

powershell - 使用快照复制 Azure Blob

mysql - 尝试为 zencart 运行 SQL 查询时出现意外 token 问题

mysql - 将一个表的项目搜索到另一个表中保存结果

mysql - SQL查询中不相关表的使用计数

azure - 如何通过powershell启动和停止 "azure search"

sql - 如何使用 LINQ 在多个 OR 内创建 SQL 嵌套 AND

mysql - SQL查询: Single row has multiple foreign keys from another table

sql-server - 如何将 View 从一个数据库复制到另一个数据库

java - 如何将信息从 html 发送到 sql