MendixではデータをDomainModelという論理モデルっぽいかたちで定義していきますが、当然それは物理モデルとしてRDBのテーブルに展開されるわけです。
じゃあそのDBの中身を見るにはどうすればいいかと言うと、常にJDBCで単純につなげられるわけでは無くて、ケース別にそれぞれやり方があります。
別にそんなことしなくてもMendixでアプリは作れるんですが、例えば期待する検索結果が取れないときにデータが悪いのか作り方がまずいのかデバッグしたりのために、見方は知っておきたいのです。
ローカル実行しているアプリの場合
まずローカルで実行するときのDBの種類(PostgreとかOracleとかetc...)を確認します。
プロジェクトの「Settings」 → 「Configurations」タブでActiveにチェックがついている行のDatabase typeです。
アプリを新規作成したあと何も変えていなければ、デフォルトでBuilt-in databaseになっているはず。
Built-in databaseの場合
Built-in databaseとは何かというと、Mendix Desktop Modelerに同梱されている、HSQLDBです。
この場合、Modelerからビューアーを起動することができます。
Run Locallyしている状態で、「Console」ビュー → 「Advanced」 → 「Start built-in database viewer」を選択。
HSQL Database Managerが起動するので、ここで普通にSQLを実行することができます。
Built-in databaseじゃない場合
任意のDB(PostgreなりOracleなりetc...)を立ててアプリがそこを使うように設定した、ということですので、お好きなツールで接続するようにしましょう。
Modeler同梱のビューアーは使えません。
Mendix Cloud上のアプリの場合
Mendix Cloud上のDBに外部から直接JDBC接続することはできません。
じゃあどうするかというと、Mendix CloudにバックアップされているDBダンプをいったんダウンロードして、任意の環境にリストアしたものを見ることになります。
Mendix CloudのDBはPostgreSQLのため、あらかじめPostgreSQLの環境を用意しておきます。
Modeler右上の吹き出しマークをクリックして、Project Dashboardにアクセス。
Project Dashboardの左メニューから「Backups」をクリック → 取得済みのバックアップ一覧から任意の行を選んで、ダンプファイルをダウンロード → 用意してあるPostgreSQL環境にリストアして中身を見ます。
ところで上記のスクショは、SandBoxつまり無償環境のアプリのバックアップ一覧となります。
SandBox上のアプリは日次サイクルでデータバックアップが取られます。つまり、まさに今この時のデータをダウンロードして見てみたい、ということは出来ず、次のバックアップまで待つ必要があるのです。
有償環境の場合は、日次バックアップに加え、即時でバックアップを取得することができます。(上記の画面に「Create Backupボタン」がある)