Mendixから外部DBに接続する方法
今回は外部DBに接続する方法について紹介します。
通常の開発でも外部DBに接続してやりとりしたいことがあると思います。
Mendixでは、Mendix Marketplaceで公開されている「Databadr connector」モジュールを利用することで、簡単に実現することが出来ます。
準備
ModelerからMendix Marketplaceを表示し「Databadr connector」モジュールをダウンロードします。
外部DBに該当するJDBCドライバを用意し、プロジェクトのuserlibフォルダ(※)に配置します。
※プロジェクトのフォルダはModelerの「App」-「Show App Directory in Explorer」で開くことが出来ます
外部DBの情報の取得方法
Mendix Marketplaceからダウンロードした「Databadr connector」モジュールに用意されている「ExecuteQuery」(※)のアクションを使用することで実現出来ます。
※SELECTを実行するアクション。Result objectに指定したエンティティのListを実行結果として返されます。
今回は、Mendixから外部DBのSQLServerに接続して、TESTテーブルからCDとNAME列のデータを取得します。
①「Databadr connector」をダウンロードしたModelerで、DomainModelに、結果取得用のエンティティを作成します。
②データ取得用のマイクロフローを作成します。
これで、外部DBの情報を取得することが出来ます。
③画面にData gridウィジェットを配置し、Data sourceに②の「Microflow」を指定して画面に表示します。
外部DBの情報の更新方法
「Databadr connector」モジュールに用意されている「ExecuteStatement」(※)のアクションを使用することで実現出来ます。
※指定されたINSERT, UPDATE, DELETE, STORED PROCEDURE, DDLを実行するアクション。SQL実行結果行数が返されます。
今回はMendixから外部DBのSQLServerに接続して、TESTテーブルのNAMEを変更します(NAMEの前に”[“、後に”]”を追加します)。
作成
①データ更新用のマイクロフローを作成します。
これで、外部DBの情報が更新出来ます。
②①で作成したマイクロフローを呼び出す画面を作成します。
確認
作成の②で作成した画面のボタンをクリックします。
「外部DBの情報の取得方法」の③で作成した画面を開きます。NAMEの前後に”[]”が付与されているのが分かります。
まとめ
いかがでしたでしょうか。
DBに接続する為の高度なスキルや知識を必要とすることなく、簡単にDBに接続するが出来ました。
今回は「Databadr connector」を利用した方法を紹介しましたが、別の方法としてWEBサービスを利用する方法もあります。
WEBサービスを利用して外部の情報を取得するやり方については下記の記事で紹介していますので、興味のある方は是非お読み下さい。