Webサイト制作コースのお申し込みはこちら

SQLエディタについてまとめています。

SQLエディタは、SQLクエリの編集・発行・ビジュアル化等をおこなうツール

SQLエディタは、開発・管理目的でSQLを編集するためのツールです。

カラム名を自動取得してタイピングの手間やミスをなくしたり、インデントや改行を最適化する整形機能を持っているものが多いです。SQLクエリを発行し、結果を一覧表示したり、ER図からテーブルを作成したり、テーブルからER図を作成する機能を備えている高機能なものもあります。

データベースエンジンのネイティブな管理ツール

DBサーバのコンソールなどにインストールし、データベース管理用のツールとして使われることが多いのが、データベースのネイティブな管理ツールです。製品の一部として提供されていることが多いです。

たとえば、MySQLには、MySQL Workbenchというツールがあります。MySQL Workbenchは、有償版のMySQL Enterprise Editionの一部として利用可能。

参考)MySQL :: MySQL Workbench

Windows、Linux、Mac OS Xで利用可能で、SQLのシンタックスのカラーハイライト、自動補完、ステートメントの再利用、実行履歴などの基本的な編集機能のほか、ER図、サーバ設定、ユーザ管理、バックアップやリカバリの実行、監査データの調査、データベースの状態監視などをおこなうことができます。

MySQL以外の主要なデータベースのネイティブな管理ツールは以下の通りです。

phpMyAdminは、ウェブから簡単アクセスできるSQLエディタ

サーバにインストールする必要がありますが、インストールしてしまえば開発チーム全員が簡単操作で使えるようになるSQLエディタが、phpMyAdminなどのウェブ系SQLエディタです。

インタフェースが日本語化されているので、データベースに不慣れなメンバーでも比較的使いやすいです。

参考)phpMyAdmin

PHPMyADminは、MySQL用のSQLエディタで、PHPとApacheがインストールされたサーバ上で動作します。

データベースにどういうデータが入っているのかを、ブラウザからアクセスしてパッと見られるのがポイント。

SQLクエリの編集・実行に加えて、データベースの作成・削除、ユーザの作成・管理、テーブルの作成・管理、データの追加や編集・削除、データベースのバックアップなど、管理者向けの機能もひと通り備えています。

しかし、簡単にウェブで操作ができることから、開発環境にインストールされて使われることが多いようです。本番環境のDBサーバにはあまりインストールされない印象。「万が一、リモートからアクセスされると困る」というセキュリティ上の懸念が理由と思われます。

MySQL以外では、PostgreSQL用のSQLエディタが利用できます。

参考)phpPgAdmin 

phpPgAdminは、PostgreSQLの8.4.x~11.xまでのバージョンに対応。SQLの実行、データの挿入・更新・削除に加え、以下の機能を備えています。

加えて、SQL形式やCSVでのデータダンプ(バックアップ)、インポート(リストア)機能もあり。

Oracle用にかつて、ウェブベースで使えるphpOracleAdminがありましたが、2014年以降更新されておらず、あまり利用されていなかったようです。現在、Oracle用のウェブベースSQLエディタは存在しないようです。

参考)phpOracleAdmin download | SourceForge.net

Microsoft SQL Server用のウェブベースSQLエディタは、当時phpMYAdminというツールがありました。しかし、2013年以降更新されておらず、最新のSQL Serverでは動作しません。

参考)phpMSAdmin download | SourceForge.net

A5:SQL Mk-2は、主要DBに対応したフリーの多機能SQLエディタ

フリーのツールながら、多くのデータベースに対応しているのがA5:SQL Mk-2。

参考)A5:SQL Mk-2 – フリーの汎用SQL開発ツール/ER図ツール 

このツールの特徴は、MySQL、Oracle、PostgreSQL、SQL Server、DB2、SQLLite、Microsoft Accessなどの主要データベースに接続できる点。

開発用のPCにインストールすれば、このツールから様々なデータベースにアクセスできるんですね。無償で使える上、2020年現在もメンテナンス・アップデートが行われています。

SQLエディタのDBオブジェクト管理機能

SQLエディタには、データベース、ユーザ、テーブル、インデックス、トリガーなどのデータベースオブジェクトの作成・更新・削除などをおこなう管理機能です。多機能型のSQLエディタには管理者権限用の機能として搭載されていることが多いです。

ビジュアルで理解できる管理機能を提供することで、データベース管理者向けの学習コストを抑えることができる点と、コマンドベースでの管理と比較して経験の浅い管理者のミスを減らせる点がメリットです。

SQLエディタのER図機能

テーブルのリレーション関係を可視化するER図の作成・編集機能が、実際のデータベースのテーブル情報と連動するというすごい機能。

なんと、フリーのA5:SQL Mk-2にも搭載されています。

ER図からテーブルを生成する機能に加えて、テーブル情報からER図を生成するリバースエンジニアリング機能を備えたツールもあります。

データベース設計のER図として利用することで、開発者全員が常に最新のテーブル定義を参照できる点がポイント。設計書の更新の手間と、更新ミスや関連するバグの発生を抑えるのに役立ちます。

データベース構造が変わる可能性が高い開発案件では、インパクトのある機能になるでしょう。

SQLエディタのクエリ整形機能

複雑な条件やジョインを記述した長いSQLクエリでミスが起こりにくいよう、見やすく整形する機能です。

多くのSQLエディタに搭載される機能ですが、整形の精度はさまざま。複雑すぎるクエリや、SQL標準以外のステートメントを使っている場合は誤認識をおこし、整形結果が意図しない結果になることがあります。

テキストエディタ搭載の整形機能や、オンラインで使えるクエリ整形サイトもあるので、合わせて検討すると良いでしょう。

【関連記事】
SQL 整形ツール 美しいコードが出力できるテキストエディタはどれ? 

SQLエディタのバックアップ・リストア機能

データベースの運用で、データのバックアップ・リストアは必須。要件にもよりますが、ユーザ向けのバックアップ・リストアは開発工数をかけて簡易的なツールを作りこむよりも、SQLエディタの機能を流用したほうがコストを削減できます。

バックアップ(エクスポート)の細かい指定をGUI上から指定でき、リストア(インポート)も簡単操作で完了。

特に、あまり規模の大きくない開発案件でバックアップ・リストア機能を実装する際にはSQLエディタの機能を流用することを検討してみるとよいでしょう。

まとめ

ポテパンダの一言メモ
  • SQLエディタは、SQLクエリの編集・発行のほか、管理者向け機能を持つものがある。
  • SQLエディタには、ネイティブ系、ウェブ系、フリーツールがあるがそれぞれ長所・短所あり。
  • SQLエディタの管理者向け機能を運用に組み込むことで、開発コストを抑えられる可能性がある

エンジニアになりたい人に選ばれるプログラミングスクール「ポテパンキャンプ 」

ポテパンキャンプは卒業生の多くがWebエンジニアとして活躍している実践型プログラミングスクールです。 1000名以上が受講しており、その多くが上場企業、ベンチャー企業のWebエンジニアとして活躍しています。

基礎的な学習だけで満足せず、実際にプログラミングを覚えて実践で使えるレベルまで学習したいという方に人気です。 プログラミングを学習し実践で使うには様々な要素が必要です。

それがマルっと詰まっているポテパンキャンプでプログラミングを学習してみませんか?

卒業生の多くがWebエンジニアとして活躍

卒業生の多くがWeb企業で活躍しております。
実践的なカリキュラムをこなしているからこそ現場でも戦力となっております。
活躍する卒業生のインタビューもございますので是非御覧ください。

経験豊富なエンジニア陣が直接指導

実践的なカリキュラムと経験豊富なエンジニアが直接指導にあたります。
有名企業のエンジニアも多数在籍し品質高いWebアプリケーションを作れるようサポートします。

満足度高くコスパの高いプログラミングスクール「ポテパンキャンプ」

運営する株式会社ポテパンは10,000人以上のエンジニアのキャリアサポートを行ってきております。
そのノウハウを活かして実践的なカリキュラムを随時アップデートしております。

代表の宮崎もプログラミングを覚えサイトを作りポテパンを創業しました。
本気でプログラミングを身につけたいという方にコスパ良く受講していただきたいと思っておりますので、気になる方はぜひスクール詳細をのぞいてくださいませ。