[注意] 本稿ではデータを管理するRDBMS(リレーショナルデータベース管理システム)製品として、単一のPCユーザーのデスクトップ環境で使用できる(煩雑なサーバー構成を必要としない)Microsoft SQL Server Express LocalDBを使用します。インストール方法は後述します。
もちろん、Power Automate for Desktopは、サーバー構成のSQL Serverや、Access、SQLite、Oracle、PostgreSQLなど、他のRDBMSにもアクセスすることができます。他のRDBMSの場合、本稿とは細かい接続文字列やコマンド文は異なりますが、その部分を適切に書き換えれば、置き換え可能です。
また、前回に引き続き、Power Automate for Desktopからメールの受信に使用可能なIMAPサーバーとアカウントがある環境を想定しています。本稿ではGmailを利用します。メールメッセージを取得アクションでGmailの認証エラーが発生する場合は、第8回の「注意」を参照して対応を試みてください。
対象読者
- Excel/PowerPointなど、一般的なツールの操作を理解している人
- RPAツールを用いて業務を自動化したい人
データベースアクション
業務において、大量のデータの蓄積、そこからの抽出・分析、結果の活用を行う場合があります。通常、エンドユーザーは業務用にカスタマイズされたアプリケーションソフトウェアで、システム管理者はDBMSに付随したコマンドラインツールまたはGUI(グラフィカルユーザーインターフェイス)ツールで、それぞれデータを操作します。
Power Automate for Desktopでも、以下のアクションを使用することで、同様のデータベースアクセスを実行できます。
- SQL接続を開く
- SQLステートメントの実行
- SQL接続を閉じる
アクションに記述するコマンド文はデータベース格納先の製品に依存しますが、ひとたびフローを作成してしまえば、DBMSを変更した場合もコマンド文の部分を書き換えるだけで、同じフローが実行可能です。データベースアクセスに際しては、まず、接続を開いた後、ステートメントを実行してデータを取得/更新し、最後に接続を閉じます。
本稿のサンプルでは、前回のIMAPサーバーから未読メールを受信して、メッセージ一覧をExcelシートに表示したフローを改良して、データベースのテーブルに格納するように変更します。
そのために、まずはデータベースとメールメッセージを格納するテーブルを作成します。
[Note]Microsoft SQL Server Express LocalDBのインストールについて
MicrosoftのRDBMSの製品であるSQL Serverの無償版「SQL Server Expressエディション」をアプリ開発用に煩雑な設定なしにローカルのみで使用するための最小限の構成が、LocalDBです。以下の手順でインストールしてください。
- 「SQL Server のダウンロード | Microsoft」から、SQL2019-SSEI-Expr.exeをダウンロード
- インストーラーを実行して、[インストール]の種類から[メディアのダウンロード]を選択
- [どのパッケージをダウンロードしますか?]のラジオボタンで[LocalDB]を選択
- [ダウンロード場所の選択]を確認するか、任意の場所に書き換え
- [ダウンロード]ボタンをクリック
- [4]で指定したフォルダーに、SqlLocalDB.msiがダウンロードされたことを確認
- SqlLocalDB.msiを実行して、インストールウィザードに従ってインストール
既定で「MSSQLLocalDB」という名前のインスタンス(=RDBMSのサーバーを表す単位)が作成され、サービスが実行されます。本稿でもそのインスタンスを使用します。
SQL Serverの場合、データベースの作成・維持管理など、すべてのDB操作はsqlcmdコマンドやSQL Server Management Studio(SSMS)で行うことができます。本稿では使用しませんが、使用する場合には別途インストールしてください。