SQL(RDBMS)を初めて触れる人にとっては「どうやってデータベースと接続するのか」分かりにくい点が多いかもしれません。実際A5M2でも使用方法や利便性を考慮した幾つかの接続方法があります。
本記事ではA5M2 を使って、外部データベース(PostgreSQL)への接続方法を初学者向けに紹介します。
A5M2(A5:SQL Mk-2)とPostgreSQLのインストール
本ブログではサンプルデータベースとしてPostgreSQLを使用しています。又、A5M2は「Vector」版のzip形式を使用します。実際に試される方は以下のブログを参考にインストールして下さい。
PostgreSQL(Ver 16.4) :PostgreSQLのインストール
A5M2(A5:SQL Mk-2)(Ver 2.19.2):A5M2(A5:SQL Mk-2)のインストール
A5M2 (A5:SQL Mk-2) データベースとの接続
PostgreSQL 接続前の準備
外部のPostgreSQLサーバーに接続するには以下の設定が必要です。下記ブログを参考に設定下さい。
参考ブログ:【PostgreSQL】 「pgAdmin 4」外部データベースサーバーの接続方法
- PostgreSQLサーバー側
- 接続を許可するクライアントの設定
- 接続を受け付けるネットワークアドレスの設定
- ファイアーウォールによるポート開放
単純にデータベースを操作したい場合の接続
単純にデータベースを操作したい場合は、以下の手順で接続します。
- A5M2を起動
- 「レジストリ」が選択されている事を確認して、「起動」ボタンをクリック
- 「OK」ボタンをクリック
レジストリにデフォルトワークスペース(接続情報の保存場所)が作成されます。
- 「OK」ボタンをクリック
- 「追加」ボタンをクリック
外部データベースとの接続情報を新規に追加します。
- 接続情報を追加するデータベースの接続タイプ
本ブログでは「PostgreSQL(直接接続)」を選択します。接続するデータベースの上にカーソルをもっていくと接続方法の内容が、ダイアログボックスの下に表示されます。接続方法の種類については後述します。
- 外部データベースの接続情報を入力して、「OK」ボタンをクリック
「OK」ボタンをクリックする前に「テスト接続」をお勧めします。
- 「接続情報」を確認して「閉じる」ボタンをクリック
- 下図のように指定した「外部データベース」が表示されれば成功です。
複数のデータベースを操作する場合の接続
プロジェクトごとにデータベース接続を切り替えたい場合には、ワークスペースを使用して接続します。ワークスペースは接続情報・クエリ履歴・カスタム設定を1つのプロジェクトファイルとして保存できる機能です。
このため特定のワークスペースを選択してA5M2を起動すれば、ワークスペースに対応したデータベースだけに接続できます。
「データベース毎のワークスペースの作成」と「接続情報」の登録
外部データベースとして「開発用(develop_db)」と「本番用(product_db)」のデータベースを用意しました。この2個のデータベースに対してそれぞれ接続用のワークスペースを作成します。
- A5M2を起動
- 「設定ファイル(ポータブルモード)」が選択されている事を確認して、「起動」ボタンをクリック
データベース毎のワークスペースの作成は「レジストリ」を選択しても作成可能です。
- 「ワークスペース名」を入力
- 「開発用DB」のワークスペースが作成されました。
「本番用DB」のワークスペースも同様に「追加」ボタンをクリックして作成します。
- 接続情報を設定するため「開発用DB」のワークスペースを選択し「起動」ボタンをクリック
- 「はい」をクリック
「ポータブルモード」の場合はパスワードを設定しましょう。
- パスワードを設定して「OK」をクリック
- 「OK」をクリック
- 「開発用DB」の接続情報を登録するため、「追加」をクリック
- 「PostgreSQL(直接接続)」を選択
- 「開発用DB」の接続情報を登録して「OK」をクリック
- 「OK」をクリック
- 「開発用DB」の接続情報が登録されました。
「追加」ボタンをクリックして同様に「本番用DB」の接続情報を登録します。
以上で「データベース毎のワークスペースの作成」と「接続情報の登録」 は完了です。
ワークスペースを利用した接続
下記の手順で接続を行います。
- A5M2を起動
- 「接続したいデータベースのワークスペース」を選択して「起動」をクリック
- パスワードを入力して「OK」をクリック
- 選択したデータベースに接続されました。
本番環境(または注意が必要なデータベース)の設定
「本番環境(あるいは注意が必要なデータベベース)」にチェックを入れると、データベース名の左側に縦の赤線を表示して注意を促してくれます。
A5M2 (A5:SQL Mk-2) 接続情報のエクスポートとインポート
接続情報をエクスポートする目的
A5M2で接続情報をエクスポートする目的は、主に以下の理由からです。これにより、効率的な作業環境の管理や共有が可能になります。
- 接続設定のバックアップ
万が一の設定情報の紛失や破損に備えるためバックアップを保存しておきます。 - チーム間での共有
同じプロジェクトを担当するメンバーに接続情報を簡単に提供するためエクスポートします。接続情報を共有することで、全員が同じ設定で作業できます。 - 環境間の移行
開発環境、テスト環境、本番環境など、異なる環境でエクスポートした接続情報を活用することで、環境間での設定作業を統一化できます。
接続情報ファイル保存時の注意事項
- セキュリティ
エクスポートされた接続情報には、パスワードは含まれませんが他の機密情報が含まれている可能性があります。共有時には適切な権限管理を行う必要があります。 - バージョンの互換性
A5M2のバージョンが異なる場合、エクスポートされた接続情報がそのままインポートできない場合があるため、注意が必要です。
接続情報のエクスポート手順
以下の手順でエクスポートできます。
- A5M2を起動しデータベースに接続
- データベース操作画面で、「データベース」→「追加と削除」を選択
- 「データベースの追加と削除」画面で、エクスポートしたいデータベースを選択し「エクスポート」ボタンをクリック
- 「エクスポート」画面で、ファイル名を設定し「保存」ボタンをクリック
以上の操作でエクスポートは完了です。
接続情報のインポート
ポータブルモードの場合、以下の手順でインポートします。
- A5M2を起動
- 「ワークスペース」を作成して「起動」ボタンをクリック
- パスワードを設定
- データベース操作画面が開くので、「データベース」→「データベースの追加と削除」を選択
- 「データベースの追加と削除」画面で「インポート」ボタンをクリック
- 「データベースリストのインポート」画面で「インポートする接続情報ファイル」を選択し、「開く」ボタンをクリック
- インポートした「本番用DB接続情報」ファイルの「product_db」接続情報が登録されるので「閉じる」ボタンをクリック
- データベース操作画面に「product_db」が表示され操作可能となる
以上の操作でインポートは完了です。
A5M2 (A5:SQL Mk-2) データベース接続方法の種類
これまではデータベースへの接続手順を紹介してきましたが、接続方法にはどのようなものがあるか、主なものを紹介します。
- 直接接続
クライアント(A5M2)からデータベースサーバーに直接接続する方法です。- 中間層を介さないため、構成がシンプル
- ローカルや社内ネットワーク上のデータベースに接続する際に利用される
- Oracle Database、PostgreSQL、MySQL/MariaDB 等
- 汎用接続
OLE DBやODBCで様々なデータベースに接続する時に使用する方法です。- OLE DB(Object Linking and Embedding, Database)
Microsoftが開発した汎用的なデータベースアクセス技術で、スプレッドシートやテキストファイルのような非構造化データソースにも接続可能 - ODBC (Open Database Connectivity)
データベースへの汎用的なアクセスを提供するインターフェイス規格。Microsoftが開発したもので、異なる種類のデータベースに対して、同じ方法でアクセスすることが可能
- OLE DB(Object Linking and Embedding, Database)
- デスクトップデータベース向け接続
- SQLite
データベースファイル(例:database.sqlite
)を直接指定することで接続可能。但し、64bit版A5M2では、sqlite3.dllが別途必要 - Microsoft Access
Microsoft Access用のODBCドライバー(標準でインストール済み)を利用して接続
又は、OLE DBプロバイダー(Microsoft.ACE.OLEDB.x.x)を使用して直接接続
- SQLite