📚

PgAdmin4 を使って簡単なテーブルを作成する

2022/09/27に公開約4,400字

はじめに

PgAdmin4 は、ウェブブラウザ上で対話的に PostgreSQLデータベースの管理・運用ができるアプリケーションです。

https://www.pgadmin.org/

この記事では、PgAdmin4 を使って簡単なテーブルを作成する方法について説明します。動作環境は、以下を前提とします。

  • PgAdmin4 と PostgreSQLサーバは、同じ Windows PC 上にインストールされている
  • PostgreSQLサーバが起動しており、データベース管理者 postgres で接続できる状態になっている

なお、PgAdmin4 の最新版は公式サイトから入手できます。また、Windows の場合、PostgreSQLサーバの公式インストーラ(Interactive installer by EDB)に PgAdmin4 が含まれています。USBメモリにもインストールできる PostgreSQL Portable を利用する場合は、以下の記事を参考にしてください。

https://zenn.dev/uinoue/articles/fe85a8f55b078c

1. PgAdmin4 の起動

最初に PgAdmin4 を起動します。起動方法はインストール方法に依存しますが、Windows のスタートメニューか、バッチファイルから起動できるはずです。起動が成功すると、PgAdmin4サーバとウェブブラウザが立ち上がり、パスワード入力画面が表示されます。

ここで入力するマスタパスワードは、PostgreSQLサーバ のパスワードではなく、PgAdmin4 の設定内容を保護するためのパスワードです。省略はできないので、任意のパスワードを必ず入力してください。以下の初期画面に遷移します。

PgAdmin4 Start

なお、英語の画面が表示された場合は、メニューを File -> Preferences -> Miscellaneous -> User language の順にたどり、右側に表示されるリスト中から Japanese を選択し、ブラウザ画面のリロード(再読み込み)してください。

2. PostgreSQLサーバとの接続

初期画面で、クリックリンクの「新しいサーバを追加」をクリックするか、メニューを オブジェクト -> 作成 -> サーバ とたどると「作成-サーバ」というタイトルのダイアログボックスが開きます。ここに、以下の情報を入力して、右下の保存ボタンをクリックして接続します。

  • 一般タブの名称欄: 任意の名前(例えば、localhost)
  • 接続タブのホスト名/アドレス欄: localhost
  • 接続タブのポート番号欄: 5432
  • 接続タブの管理用データベース欄: postgres
  • 接続タブのユーザ名欄: postgres
  • 接続タブのパスワード欄: パスワード(ない場合は、空白)

接続が成功するとダッシュボード画面が表示されます。

3. データベースの作成

現在接続しているデータベースは管理用データベース postgres ですが、これをユーザが使用するのはセキュリティの観点から好ましくありません。そこで、ユーザ用データベースを新しく作成します。メニューを オブジェクト -> 作成 -> データベース とたどると「作成-データベース」というタイトルのダイアログボックスが開きます。適当なデータベース名(ここでは shop とする)を入力して、右下の保存ボタンをクリックします。データベースの作成が成功すると、ブラウザの localhost のデータベースの下に shop が表示されます。

4. テーブルの作成

次に、以下のような構造の商品テーブルを作成してみます。

商品番号 商品名 商品分類 販売価格 販売開始日
1010 キーボード 周辺機器 5000 2021-04-01
1020 マウス 周辺機器 3000 2021-04-01
1030 外付ドライブ 記憶メディア 8500 2021-05-01

ブラウザで shop の下の スキーマ public を選択した状態で、メニューを オブジェクト -> 作成 -> テーブル とたどると「作成-テーブル」というタイトルのダイアログボックスが開きます。まず、一般タブの名称欄にテーブル名「商品」を入力します。

次に、列タブに移り、商品テーブルを構成する列を定義します。列の追加は右側の+ボタンで行い、各列について以下の情報を入力します。

  • 名称(列の識別名)
  • データ型
  • 長さ/精度
  • スケール
  • NOT NULL(値の省略不可ならば Yes)
  • 主キー(行の一意識別キーならば Yes)

Create Table

保存ボタンをクリックすると商品テーブルが作成され、ブラウザの public のテーブルの下にテーブル名が表示されます。

5. データの追加、変更、削除

テーブルにデータ(行)を追加するには、ブラウザで商品テーブルが選択された状態で、メニューを オブジェクト -> データの閲覧/編集 -> すべての行 とたどります。すると「クエリエディタ」と「データ出力」の2つのパネルが表示されます。クエリエディタにはデータを閲覧するための SQL文、データ出力パネルにはテーブルの列見出しと行データ(最初は空白行のみ)が表示されます。

Insert

データ出力パネルの空白行に列の値を入力して Enterキーを押下すると行の追加が行われ、次の空白行が表示されます。表示されている列の値を変更すると行の変更が行われます。なお、空白行が自動的に表示されない場合は、右側の+ボタンを押下してください。

また、メニュー下部のツールバーの「削除」アイコン(ゴミ箱)をクリックすると行が削除されたことを示す赤い取り消し線が表示されます。

Update/Delete

この段階ではまだ、追加、削除、変更した内容は画面上に表示されているだけで、データベースの更新は行われていません。ツールバーの「変更データを保存」アイコン(表と↓)をクリックするか、F6キーを押下すると、更新内容が実際にデータベースに反映されます。

6. SQL文によるデータベース操作

データベースに関するすべての操作は、クエリエディタにSQL文を入力することで実行することができます。クエリエディタは、データベースを選択した状態で、メニューを ツール -> クエリツール とたどることでも表示できます。

Query Tool

クエリエディタに入力した SQL文は、ツールバーの「実行/更新」アイコン(右向き▼)をクリックするか、F5キーを押下することによって実行されます。これまで説明してきた操作を SQL文で記述すると以下のようになります。

-- テーブルの作成
CREATE TABLE 商品 (
    商品番号 INT NOT NULL,
    商品名 VARCHAR(20) NOT NULL,
    商品分類 VARCHAR(10),
    販売価格 INT,
    販売開始日 DATE,
    PRIMARY KEY (商品番号)
);
-- データの追加
INSERT INTO 商品 VALUES
    (1010, 'キーボード', '周辺機器', 5000, '2021-04-01'),
    (1020, 'マウス', '周辺機器', 3000, '2021-04-01'),
    (1030, '外付ドライブ', '記憶メディア', 8500, '2021-05-01');
-- データの検索
SELECT * FROM 商品;
-- データの更新
UPDATE 商品 SET 販売価格=9000 WHERE 商品番号=1030;
-- データの削除
DELETE FROM 商品 WHERE 商品番号=1030;

クエリエディタは、複数の SQL文を含むスクリプトを一括で実行したり、テキストファイルからの読み込み、書き出しを行うこともできます。なお、データ出力パネルには、スクリプト中で最後に実行した SQL文の結果のみしか表示されないので注意してください。

7. 削除、切断、終了

テーブルを削除したい場合は、ブラウザでテーブルを選択した状態で、メニューの オブジェクト -> 削除 を選択します。同じようにして、データベースも削除できます。

PostgreSQLサーバから切断したい場合は、ブラウザで localhost を選択した状態で、メニューの オブジェクト -> サーバから切断 を選択します。

PgAdmin4 を終了する場合は、ウェブブラウザを閉じてください。Windows のタスクバーに PgAdmin4 のアイコン(青象の顔)が表示されている場合は、右クリックして Shut down server を選択します。

おわりに

この記事では、PgAdmin4 を使用した基本的なデータベース操作について、メニューで行う方法とSQL文で行う方法の両方について説明しました。PgAdmin4 は高機能なプログラムであり、この記事で説明しなかった多くのことを行うことができます。公式サイトのマニュアルを参照してください。

Discussion

ログインするとコメントできます