Navicatは、高いパフォーマンスとスピードを追求した、複数のデータベースに接続して操作できるクライアントアプリケーションです。 Navicat 17では、AIを幅広く活用した機能と直感的なユーザーインターフェースを実現し、他の製品との差別化を図りました。そして今月後半には、Navicat 18がリリースされる予定です。1つのアプリケーションから複数のデータベースに接続できるだけでなく、よりスムーズで効率的な操作が可能になります。本記事では、Navicat 18でAIツールを日々の業務にどのように活用できるのかを紹介します。
Data Masking(データマスキング)
Data Maskingは、Navicat 18に新しく搭載された機能で、プライバシー規制への対応や、システムのテストやデータ共有の際に機密情報を保護するために利用できます。機密情報をルールに基づいて加工・保護でき、複数のマスキング方法が用意されており、用途に応じて適した方法を選択できます。
データマスキングは、メイン画面の[ツール -> データマスキング]から利用できます。まず、以下の2つの方法から、データマスキングをどのように適用するかを選択します。
- マスキングしたデータを別のデータベースに転送する:データベース間やスキーマ間でデータを移動するときに、機密情報をマスキングします。これにより、移動先には保護されたデータだけを渡すことができます。
- 既存のテーブルのデータをマスキングする:すでにデータが入っているテーブルのカラムを、テーブル上で直接マスキングできます。
ウィザードがマスキングに必要な手順を案内してくれます。接続先とテーブルを選択し、保護するカラムを指定したうえで、それぞれのカラムに適用するマスキング手法を設定します。Navicatでは、カラム名、データ型、文字数などを基に、適切と思われるマスキング手法を自動的に割り当てることもできます。自動で割り当てられた手法は、必要に応じて変更できます。
利用できるマスキング手法は、次の5種類です。
- Substitution(置換):あらかじめ用意されたデータライブラリから、実際には存在しない現実的な値に置き換えます。
- Variance(変動):数値や日付の値を、指定した割合または範囲に基づいて変更します。元のデータ全体の分布は維持されます。
- Hashing(ハッシュ化):暗号アルゴリズムを使用して、データを一意の固定長の文字列に変換します。
- Nulling(NULL化):機密性の高いデータをNULLまたは空欄に置き換えます。
- Shuffling(シャッフル):同じカラム内で、異なる行にある値をランダムに入れ替えます。
各マスキング手法には、個別に設定できるオプションがあります。例えば、Substitution(置換)では、元の文字列の最初の数文字を残して、データの内容を把握しやすくすることができます。一方、Variance(変動)では、数値の変更範囲を設定できます。
AIで入力
データマスキングツールがデータベース全体を対象に利用できるのに対し、AIで入力は、既存のカラムのデータを分析して、現在表示しているテーブル上で直接データの生成、変換、要約を行えます。例えば、空欄を現実的なデータで埋めたり、テキストカラムを別の言語に翻訳したり、データを整理したりできます。これらの操作は、Grid(グリッド)画面(テーブルのデータを表示する画面)を離れずに行えます。
AIで入力は、メイン画面にあるグリッドのツールバーから利用できます。また、使用するAIアシスタントを変更することもできます。
AIで入力のダイアログでは、AIに参照させるフィールド(Referenced Fields)、処理するレコード数(Records to Process)、AIへの指示(Instructions)、生成したデータの入力先となるフィールド(Destination Fields)を指定できます。ここでは、AIに有名なアーティスト、作曲家、科学者の名前を使った、現実的なデータを生成するよう指示しました。このようなデータの生成は、データマスキングツールでは行えません。
次の画面では、元のデータと生成されたデータを左右に並べて比較できるため、期待した結果になっているかを確認できます。
ダイアログを閉じると、生成されたデータが入力されたテーブルが表示されます。Applyボタンをクリックすると、変更が確定します。
AIで入力は、あらかじめ決められた手法ではなく、自由な指示に基づいて処理できるため、単なる仮データの生成にとどまらず、さまざまな用途に利用できます。例えば、カラムを別の言語に翻訳したり、名前から会社用のメールアドレスを生成したり、長いテキストフィールドを要約したり、統一されていない書式を整えたり、周囲のデータをもとにカラムの空欄を埋めたりできます。
AIを活用したテーブル設計
テーブルデザイナーにもAIによる機能強化が行われました。
- AIに質問する:必要なテーブルの内容を説明するだけで、数秒でテーブルを設計できます。
- コメントを入力:フィールドの定義を分析し、分かりやすいテーブルコメントを自動的に生成します。
テーブルデザイナーのメインメニューにある[AIに質問する]をクリックすると、[AIに質問する]ダイアログが開きます。ここで、作成したいテーブルについてAIに詳しく指示できます。また、いくつかの候補から選択することもできます。
以下は、PostgreSQLのdvdrentalデータベースにあるfilmテーブルに追加するよう、Claudeが提案したフィールドです。
どのフィールドも非常に役立つものでした。
次に[注釈行]タブを開き、メイン領域にマウスポインターを合わせると、[AIで入力]ボタンが表示されます。クリックすると、AIがテーブルのコメントを提案してくれます。以下は、actorテーブルについてAIが提案したコメントです。
新しいリアルタイムエラー検出機能を使ったクエリの作成
新しい「Real-time Error Detection(リアルタイムエラー検出)」機能により、バージョン18のクエリエディタがさらに進化しました。AIを利用して、スクリプト内のエラーを特定し、簡単な操作で修正できます。また、マウスポインターを合わせると、エラーの箇所や関連するメタデータを確認できるようになりました。
上記のクエリには、customerテーブルとrentalテーブルを結合する処理が抜けていることが分かります。[AIで修正]ツールを使って、このクエリを修正できます。AIが提案する修正内容は、ダイアログで確認できます。
結論
Navicat Premiumの今回の最新リリースには、注目すべき機能が数多く盛り込まれています。AIを活用した編集機能から、データベースモデリングを一つに統合した環境まで、アプリケーションのさまざまな部分が改善されています。
Navicatは、Windows、macOS、Linuxをはじめ、主要なプラットフォームで利用できます。さらに、無料版のNavicat Premium Liteも用意されています。基本的なデータベース操作を主に行うユーザーにとって、理想的な選択肢です。

