RPA のPower Automate Desktop でMySQL データに連携する方法(CSV ファイルの生成自動化)

詳細情報をご希望ですか?

無償トライアル:

ダウンロードへ

製品の詳細情報へ:

MySQL ODBC Driver

MySQL ODBC ドライバーは、ODBC 接続をサポートする任意のアプリケーションからリアルタイムなMySQL データに直接接続できるパワフルなツールです。標準のODBC ドライバーインタフェースを使用して、事実上どこからでもMySQL データベースにアクセスできます。



ODBC Driver 経由でPower Automate Desktop からMySQL データを利用可能に



Microsoft のRPA サービス「Power Automate Desktop」は、さまざまなファイルやサービスの処理を自動化できます。Power Automate Desktop では、ODBC インターフェースが利用できるため、CData Software ODBC Drivers を使って、ネイティブではサポートされていない多くのSaaS/クラウドDB のデータを扱えます。この記事ではCData ODBC Driver for MySQL を使って、Power Automate Desktop からMySQL データを使えるようにします。サンプルとしてMySQL データから特定のテーブルを選んで自動でCSV ファイルを生成します。

CData ODBC Drivers のインストールとサービスへの接続設定

ODBC 接続プロパティの指定がまだの場合は、DSN (データソース名)で接続設定を行います。 Microsoft ODBC データソースアドミニストレーターを使ってODBC DSN を作成および設定できます。 ODBC ドライバーのインストール完了時にODBC DSN 設定画面が立ち上がります。 Microsoft ODBC データソースアドミニストレーターを開いて設定を行うことも可能です。 必要なプロパティを設定する方法は、ヘルプドキュメントの「はじめに」をご参照ください。

  • User
  • Password
  • Database
  • Server
  • Port

Microsoft ODBC データソースアドミニストレーターで必要なプロパティを設定する方法は、ヘルプドキュメントの「はじめに」をご参照ください。

Server およびPort プロパティがMySQL への接続には必須です。IntegratedSecurity をFALSE に設定した場合、User、Password も必須になります。 オプションで、Database を設定することもできます。Database は設定がない場合すべてのデータベースを使えるようになります。

パスワード方式によるSSH 接続

パスワード方式によるSSH接続時に必要なプロパティ一覧を以下に示します。

  • User: MySQL のユーザ
  • Password: MySQL のパスワード
  • Database: MySQL の接続先データベース
  • Server: MySQL のサーバー
  • Port: MySQL のポート
  • UserSSH: "true"
  • SSHAuthMode: "Password"
  • SSHPort: SSH のポート
  • SSHServer: SSH サーバー
  • SSHUser: SSH ユーザー
  • SSHPassword: SSH パスワード

接続文字列形式では以下のようになります。User=admin;Password=adminpassword;Database=test;Server=mysql-server;Port=3306;UseSSH=true;SSHAuthMode=Password;SSHPort=22;SSHServer=ssh-server;SSHUser=root;SSHPassword=sshpasswd;

公開鍵認証方式方式によるSSH 接続

公開鍵認証によるSSH接続時に必要なプロパティ一覧を以下に示します。

  • User: MySQL のユーザ
  • Password: MySQL のパスワード
  • Database: MySQL の接続先データベース
  • Server: MySQL のサーバー
  • Port: MySQL のポート
  • UserSSH: "true"
  • SSHAuthMode: "Public_Key"
  • SSHClientCertType: キーストアの種類
  • SSHPort: SSH のポート
  • SSHServer: SSH サーバー
  • SSHUser: SSH ユーザー
  • SSHClientCert: 秘密鍵ファイルのパス

接続文字列形式では以下のようになります。User=admin;Password=adminpassword;Database=test;Server=mysql-server;Port=3306;UseSSH=true;SSHAuthMode=Public_Key;SSHClientCertType=PUBLIC_KEY_FILE;SSHPort=22;SSHServer=ssh-server;SSHUser=root;SSHClientCert=C:\Keys\key.pem;

Power Automate Desktop では、設定したMySQL のDSN 名のほかに、使用するテーブル名が必要です。テーブル名は、ODBC DSN 構成画面の「テーブル」タブで確認可能です。使うテーブルもしくはビューの名前をコピーして控えておくとよいでしょう。

Power Automate Desktop でMySQL データを利用するフローを作成

Power Automate Desktopでフローを作成していきます。Power Automate Desktopを立ち上げて、「新しいフロー」をクリックします。任意のフロー名を入力して、新規のフローを作成します。

以下の順番でフローを作成していきます。

SQL 接続の設定

Power Automate Desktop から、CData ODBC Driver でMySQL に接続する場合にはデータベース接続のアクションを使います。まず最初に「SQL 接続を開く」アクションを配置して、先ほど設定したODBC DSN への接続設定を行います。

「SQL 接続を開く」の設定画面で、MySQL のDSN を「DSN= CData MySQL Source;」の形で指定します。

SQL ステートメントの実行

続いてデータを取得するクエリを実行するために「SQL ステートメントの実行」を配置します。設定画面に以下を設定します。

  • 接続の取得方法:SQL 接続変数
  • SQL 接続:%SQLConnection%
  • SQL ステートメント:SELECT * FROM Orders
  • タイムアウト:任意

これでSQL でMySQL にクエリをすることができます。豊富なSQL の設定が可能です。

CSV ファイルの生成

この例では、取得したMySQL データをCSV ファイルとして保存します。では、CSVファイルの生成アクションを設定します。アクションから「CSV ファイルに書き込みます」を配置します。

取得したアプリのデータが格納されている「%QueryResult%」を書き込む変数に指定します。生成先のファイルパスを指定します。列名を含めたい場合には「Advanced」の「列名を含めます」にチェックを入れます。

SQL 接続を閉じる

最後に、接続したODBC 接続をクローズします。「SQL接続を閉じる」をフローに配置します。

閉じるコネクションを指定して保存します。

これで、MySQL データをCSV に保存するPower Automate フローが完成しました。実行ボタンを押してオートメーションを実行しましょう。

このように、CData ODBC Drivers と併用することで、200を超えるSaaS、NoSQL データをRDB データのようにPower Automate Desktop からコーディングなしで扱うことができます。