2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

セゾン情報システムズAdvent Calendar 2022

Day 1

Azure DevOpsでストアドプロシージャをデプロイする

Last updated at Posted at 2022-12-01

この記事は セゾン情報システムズ Advent Calendar 2022 2ページ目1日目の記事です。

SQL ServerのストアドプロシージャをGit管理し、デプロイを自動化できないか検討してみました。

Azure DevOpsのパイプライン

azure-pipelines.yml

trigger:
- main

variables:
  - group: DB_VALUE

pool:
  vmImage: windows-latest

steps:
- powershell: |
    Write-Host "##vso[task.setvariable variable=sql;]$(TYPE $(Build.SourcesDirectory)\test.sql)"

- task: SqlAzureDacpacDeployment@1
  displayName: 'contosoSQL'
  inputs:
    azureSubscription: "<service connection name>"
    AuthenticationType: 'server'
    ServerName: $(SERVER_NAME)
    DatabaseName: $(DB_NAME)
    sqlUsername: $(USER_NAME)
    sqlPassword: $(PASSWORD)
    deployType: InlineSqlTask
    sqlInline: $(sql)

ポイント

SQLの中身
テストなのでめちゃくちゃシンプルですが、既存のプロシージャを更新する場合はALTER PROCEDURE <プロシージャ名>を使います

ALTER PROCEDURE [dbo].[test]
AS
BEGIN
SELECT * FROM usr
WHERE id = 001
END

これでmainブランチに変更がコミットされるとパイプラインが動き、SQL Server上のストアドプロシージャが更新されます。
ストアドプロシージャもGitで構成管理でき、デプロイの自動化もできました!

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?