pgAdmin 4 の主要機能

概要

pgAdmin 4 は、PostgreSQL を管理するためのツールである。本ページでは、ユーザの作成、データベースの作成と権限設定、SQLの編集と実行、テーブルの表示と更新という主要機能を説明する。

目次

【サイト内の関連ページ】

PostgreSQL 活用ガイド

前準備

PostgreSQL のインストール

あらかじめ決めておく事項

データベースを作成する前に、データベース名とエンコーディング(文字コード)を決めておく。本ページでは次の設定を使う。

また、データベース・一般ユーザのアカウント作成に必要なユーザ名パスワードを次のように設定する。

アカウント作成およびデータベースの作成と権限設定には、PostgreSQL データベース管理者の認証情報が必要となる。本ページでは、管理者ユーザ名を postgres として説明する。

PostgreSQL への接続と切断

pgAdmin 4 で PostgreSQL を使うには、まず PostgreSQL への接続を確立する。以下に、PostgreSQL データベース管理者(postgres)として接続する手順を示す。

  1. マスターパスワードを設定する。
  2. オブジェクトブラウザで、登録済みのサーバ(例:PostgreSQL 18 (localhost:5432))を右クリックし、「Properties(プロパティ)」を選択する。
  3. 使用するデータベース名とユーザー名を設定する。
  4. 登録済みのサーバを右クリックし、「Connect Server(接続)」を選択する。
  5. パスワード認証画面が表示されたら、パスワードを入力する。
  6. 切断するには、登録済みのサーバを右クリックし、「Disconnect Server(切断)」を選択する。

データベース・一般ユーザのアカウント(ユーザ名とパスワード)の作成

  1. pgAdmin 4 で PostgreSQL に接続する。

    接続には、PostgreSQL データベース管理者のユーザ名を使う。

  2. (未展開の場合)オブジェクトブラウザで、登録済みのサーバの左側の「+」をクリックして展開する。
  3. Login/Group Roles(ログイン/グループロール)」を右クリックし、「Create」から「Login/Group Role...」を選択する。
  4. ユーザ名とパスワードを設定する。

    以下の例では、ユーザ名を testuser、パスワードを hoge$#34hoge5 に設定する。

    • ロール名: testuser を設定
    • パスワード: hoge$#34hoge5 を設定

      セキュリティ確保のため、実際の運用では異なるパスワードを使うこと。

データベースの作成と権限の設定

  1. pgAdmin 4 で PostgreSQL に接続する。

    接続には、PostgreSQL データベース管理者のユーザ名を使う。

  2. (未展開の場合)オブジェクトブラウザで、登録済みのサーバの左側の「+」をクリックして展開する。
  3. 登録済みのサーバを右クリックし、「Create」から「Database...」を選択する。
  4. データベースを作成し、オーナーを設定する。

    以下の例では、データベース名を testdb、オーナーを testuser、エンコーディングを UTF8 に設定する。

    • Database(データベース): testdb を設定
    • Owner(オーナー): testuser を設定

      データベースオーナーには、すべての操作権限が付与される。セキュリティ上、PostgreSQL データベース管理者(postgres)とは別のアカウントを使うことを推奨する。

    • Encoding(エンコーディング): UTF8 を設定

SQLの編集と実行、SQL実行結果のファイル出力

対象のデータベースを選び、Query Tool(クエリツール)を開く。クエリツールでは、SQLの編集と実行、PostgreSQL コマンドの実行ができる。以下に、SQLによるテーブルの定義レコードの挿入問い合わせの実行例を示す。

  1. pgAdmin 4 で PostgreSQL に接続する。

    セキュリティ上、一般ユーザでの接続を推奨する。不要な管理者権限での接続は避ける。

  2. (未展開の場合)オブジェクトブラウザで、登録済みのサーバの左側の「+」をクリックして展開する。
  3. Databases(データベース)」の左側の「+」をクリックして展開する。
  4. 表示されたデータベース一覧から、操作対象のデータベースを選ぶ。
  5. Query Tool」をクリックする。
  6. SQLでテーブルを定義する。

    クエリツールが表示される。次のようなSQLを編集・実行できる。

    create table order_records (
        id            integer primary key not null,
        year          integer not null check ( year > 2008 ),
        month         integer not null check ( month >= 1 and month <= 12 ),
        day           integer not null check ( day >= 1 and day <= 31 ),
        customer_name text not null,
        product_name  text not null,
        unit_price    real not null check ( unit_price > 0 ),
        qty           integer not null default 1 check ( qty > 0 ),
        created_at    timestamp with time zone not null,
        updated_at    timestamp with time zone,
        check ( ( unit_price * qty ) < 200000 ) );
  7. SQLでレコードを挿入する。
    begin transaction;
    insert into order_records (id, year, month, day, customer_name, product_name, unit_price, qty) values ( 1, 2023, 7, 26, 'kaneko',   'orange A', 1.2, 10 );
    insert into order_records (id, year, month, day, customer_name, product_name, unit_price, qty) values ( 2, 2023, 7, 26, 'miyamoto', 'Apple M',  2.5, 2 );
    insert into order_records (id, year, month, day, customer_name, product_name, unit_price, qty) values ( 3, 2023, 7, 27, 'kaneko',   'orange B', 1.2, 8 );
    insert into order_records (id, year, month, day, customer_name, product_name, unit_price)      values ( 4, 2023, 7, 28, 'miyamoto', 'Apple L', 3 );
    commit;
  8. データを確認する。
    select * from order_records;

SQL実行結果のファイル出力

クエリツールで「Download as CSV/TXT」を選択する。

Excel がインストールされている環境では、CSVファイルを Excel で開ける。

ファイルに保存したSQLの実行

クエリツールで「Open File」をクリックする。

テーブルの一覧表示と中身の表示・更新(行の追加、行の削除、値の更新)

テーブルの一覧表示

データベース内のテーブル一覧を表示するには、オブジェクトブラウザで Schemas(スキーマ)publicTables(テーブル)を展開する。

テーブルの中身の表示・更新(行の追加、行の削除、値の更新)

テーブル一覧を表示したあと、テーブルを右クリックし、「View/Edit Data」→「All Rows(全ての行を表示)」を選ぶと、テーブルの内容を表示・編集できる。

このウインドウでは、データの更新(行の追加、行の削除、値の更新)を実行できる。