A5:SQL Mk-2とは?

A5:SQL Mk-2はWindows用のSQL開発環境で、以下のような機能を備えている。

  • 強調表示、コード補完の可能なSQLエディタ
  • SQL実行結果の比較
  • SQLデザイナ
  • テーブルエディタ
  • ER図の作成・編集
  • テーブルのデータのエクスポート・インポート
  • テーブル定義書のエクスポート
  • SQL実行計画の表示
  • コントロールパネル(Oracleのみ)

対応データベースはOracle、MySQLには直接接続が可能、それ以外のデータベースにはOLEDB、ODBC経由での接続となる。

今回はデータベースを使用したシステム開発のお供としてこのA5:SQL Mk-2を紹介したい。なお、A5:SQL Mk-2はフリーソフトとして配布されており無償で使用することができる。

SQLの作成・編集

SQLエディタは強調表示やコードアシストが可能だ。コードアシスト機能を利用するには対象のデータベースを選択する必要がある。SQLのキーワードやテーブル名、カラム名などを補完できる。サブクエリ内でSELECTしたカラムなどもきちんと補完候補として表示してくれる。SQLの実行結果は画面下側に表形式で表示される。

図1: SQLエディタ

SQLをグラフィカルに作成するためのクエリデザイナも用意されている。簡単なクエリを作成する場合や、SQLに慣れていない場合はエディタで直接SQLを記述するよりもクエリデザイナを使用するほうが効率的かもしれない。

図2 : クエリデザイナ

また、SQLを二回連続で実行し(実行タイミングはユーザが制御可能)、差分を確認することもできる。アプリケーションで操作を行う前に1回目、操作の実行後に2回目を実行し、アプリケーションでの操作によってデータベースが正しく更新されていることの確認を簡単に行うことができる。

図3 : SQL実行結果の差分確認

SQLの実行結果や差分の確認結果はCSV、XML、Excelファイルに出力することも可能だ。

テーブルに関する操作

ツリーペインからテーブルをダブルクリックすると表形式のテーブルエディタが開き、テーブルの内容を編集することができる。ちょっとしたデータの追加や編集に便利だ。テーブルエディタではカラムや制約の定義などスキーマ情報を参照することもできる。

図4 : テーブルエディタ

ツリーペインの右クリックメニューからはテーブル定義(CSVもしくはExcel)の出力、データCSVファイルへの一括エクスポートおよびインポート、CRUD用のSQLファイルの生成などを行うことができる。

図5 : テーブル定義書

また、少し変わった機能としてテスト用のダミーデータを自動生成する機能がある。該当のテーブルに対して連番から作成したデータをインサートしてくれるというもので、負荷試験などの際に大量のダミーデータを用意しなければならない場合に便利だろう。ただし、自動生成されるダミーデータは外部キー制約などを特に意識せずに生成されるため、データ生成時に外部キー制約違反にならないよう注意する必要がある。複雑なリレーションを持つテーブルに対しては使いにくいかもしれない。

ER図の作成

A5:SQL Mk-2はER図を作成する機能も備えている。新規にER図を作成するほか、既存のデータベースからリバースエンジニアリングで自動生成することができる。もちろん自動生成したER図を編集することも可能だ。

図6 : リバース生成したER図

図7 : ER図でテーブルを編集

編集したER図はデータベースとは直接は同期されておらず、必要に応じてデータベースからER図にスキーマ情報を同期したり、ER図からDDLを生成してデータベースに反映する、といった使い方になる。

専用のモデリングツールには見劣りするものの、すでに存在するデータベースのスキーマを可視化するためのツールとしては充分に実用的といえるだろう。

まとめ

システム開発ではデータストレージとしてリレーショナルデータベースを利用することが多く、開発中にデータベースのデータを作成したり、確認するためのツールが必要になる。これらのツールにはデータベースに付属するクライアントから、サードパーティ製の汎用的なフロントエンドまで様々なものがあるが、A5:SQL Mk-2は数あるRDBMSフロントエンドの中でもシステム開発の現場向きの機能が多く実装されている。また、高機能な割に動作も軽快なので、使っていてストレスを感じないという点も評価したい。ただ、OracleとMySQL以外のデータベースにはネイティブ接続できないという点は残念だ。

日常的に利用するための軽快なRDBMSのフロントエンドをお探しの方はA5:SQL Mk-2を試してみて欲しい。