ニュース&ブログ
【Microsoft Azure】SQL の実行結果をメールで送信する【Logic Apps】
投稿日:2023/4/27
はじめに
こんにちは。システムサポートのMitaです。
このブログでは Microsoft Azure のサービスの中でよく使うものを紹介していければと思います。
こんなとき
DBのテーブルを確認したい。でもいちいちDBにログインしてSQLの結果をみるのは面倒くさい。
定期的にテーブルデータがメールで送られてくればいいのに。。。そんなときありますよね?
そんなとき便利なのが Logic Apps です。
Logic Apps とは、コードをほとんど/全く使用せずワークフローを作成し実行できる Azure のサービスです。
(Azure Logic Apps とは:https://learn.microsoft.com/ja-jp/azure/logic-apps/logic-apps-overview)
今回はメールでの送付を対象としていますが、Teamsなどのチャットツールや様々なコネクタを使用することができます。
つくってみた
とにもかくにも実装してみましょう。
今回は「繰り返し」の実行をトリガーとし、「SQLクエリを実行する」「メールの送信」を追加した単純な作りとします。
テーブルは下記のような作りとなっています。
「SQLクエリを実行する」では対象のDBサーバ名とDB名を選択してください。
Add new parameterからqueryを選択することでクエリを記述する欄が現れますので、
その欄に実行したいSQLを記述してください。
今回は試しに [Query Results] と [ResultSets Table1] を選択してみました。
(画像では隠していますが宛先に自身のメールアドレスを入力してください。)



それでは「トリガーの実行」をしてみましょう。
メールが届きました!
。。。なんというか、すごく見づらいですね。。これではメールを受け取ったところであまり使い道はなさそうです。

そこで今回はもうひと手間加え、メールを見やすくしてみましょう。
「SQLクエリを実行する」と「メールの送信」の間にアクションを追加します。
追加するのはデータ操作の「HTMLテーブルの作成」で [ResultSets Table1] を挿入してあげます。



先ほど直接SQLの結果を渡していた「メールの送信」には「HTMLテーブルの作成」の [出力] を挿入します。

それでは改めて「トリガーの実行」をしてみましょう。
メールが届きました!
。。。いい感じに整っていますね!これなら上司への数字の報告にもそのまま使えそうです。

まとめ
今回は Azure Logic Apps にて SQL の実行結果をメールで送信する機能を実装してみました。
冒頭でも書きましたようにメール以外でも様々なコネクタと連携していますので、自身の環境に合わせて使ってみてください。

Mita(2020年入社)
株式会社システムサポート フューチャーイノベーション事業本部 ソリューションサービス事業部所属
Oracle Database や SQL Server と闘う日々を送っている