gpt4 book ai didi

sql - SqlAzureDacpacDeployment 中 SqlAdditionalArguments 的语法是什么

转载 作者:行者123 更新时间:2023-12-02 08:18:11 31 4
gpt4 key购买 nike

我正在尝试在 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/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com