pgAdmin 4 の主要機能
pgAdmin 4は,PostgreSQL に関する各種操作を,簡単に行えるツール.
【目次】
前準備
PostgreSQL のインストール
- Windows での,PostgreSQL 14.5,pgAdmin 4,PostGIS 3 のインストール,psql によるテーブル定義とレコード挿入: 別ページ »で説明
- Ubuntu での,PostgreSQL 14, pgAdmin 4, PostGIS 3 のインストール: 別ページ »で説明
あらかじめ決めておく事項
このページでは,データベースの作成を行うので, 作成するデータベースのデータベース名と漢字コード(エンコーディング)を決めておくこと. このページでは,次のように書く.
- データベース名: testdb
データベース名は,自由に決めてよいが,半角文字(つまり英字と英記号)を使い,スペースを含まないこと,
- 漢字コード(エンコーディング): UTF8
このページでは, データベース・一般ユーザのアカウントを作成するので, そのユーザ名とパスワードを決めておくこと.このページでは次のように書く.
- ユーザ名: testuser
- パスワード: hoge$#34hoge5
* 説明上,単純に hoge$#34hoge5 と書いているが,必ず,これとは違う適切なパスワードを設定すること)
データベース・一般ユーザのアカウント作成やデータベースの作成と権限の設定には, PostgreSQL データベース管理者のユーザ名とパスワードが必要になるので,前もって調べておくこと. このページでは,Postgres データベース管理者のユーザ名を postgres と書く.
PostgreSQL への接続と切断
pgAdmin III で PostgreSQL を使うには, 最初に,pgAdmin III において,PostgreSQL への接続を行う必要がある. 以下,PostgreSQL データベース管理者 (postgres) として接続する手順を説明する.
- マスターパスワードの設定
- オブジェクトブラウザで,PostgreSQL 12.0 (localhost:5432) を右クリックし,
「Properties (プロパティ)」を選ぶ.
- 使用するデータベース名と,ユーザー名の設定
- PostgreSQL 12 を右クリックして,「Connect Server (接続)」を選ぶ.
- パスワードを聞いてきたら,パスワードを与える.
- 切断 するには,PostgreSQL 12 を右クリックして,「Disconnect Server (切断)」を選ぶ.
データベース・一般ユーザのアカウント(ユーザ名とパスワード)作成
- pgAdmin 4 で,PostgreSQL に接続する.
このとき,ユーザ名 pgadminで接続すること.
- (もし展開されていなければ)PostgreSQL 12 を展開
オブジェクトブラウザで,PostgreSQL 12 の左横の「+」をクリックして,展開する.
- 「Login/Group (ログイン/グループロール)」を右クリックして,「Create」の「Login/Group Role...」を選ぶ.
- ユーザ名とパスワードの設定.
ユーザ名として testuser,パスワードとして hoge$#34hoge5 を設定したいときの操作は次の通り.
- ロール名: 例えば,testuserのように設定
- パスワード名: 例えば,hoge$#34hoge5のように設定
* 説明上,単純に hoge$#34hoge5 と書いているが,必ず,これとは違う適切なパスワードを設定すること)
データベースの作成と権限の設定
- pgAdmin 4 で,PostgreSQL に接続する.
このとき,ユーザ名 pgadminで接続すること.
- (もし展開されていなければ)PostgreSQL 12 を展開
オブジェクトブラウザで,PostgreSQL 12 の左横の「+」をクリックして,展開する.
- 「PostgreSQL 12」を右クリックして,「Create」の「Database...」を選ぶ.
- データベースの作成とオーナの設定
データベース名は testdb,オーナーは testuser,漢字コード(エンコーディング)UTF8 としてデータベースを作成したいときの操作は次の通り.
- Database (データベース): データベース名である,testdb を設定
- Owner (オーナー): testuser のように設定
データベースのオーナーは,データベースに対してあらゆる操作の権限が与えられる.PostgreSQL データベース管理者 (pdadmin) とは別にしておいた方が良い。
- Encoding (エンコーディング): UTF8 のように設定
SQL の編集と実行,SQL 実行結果のファイル出力
使いたいデータベースを選び,Query ウインドウを開く. Query ウインドウを使って,SQL の編集と実行,PostgreSQL コマンドの実行ができる. SQL によるテーブルの定義と,問い合わせと,更新の実行例は下記の通り.
- pgAdmin 4 で,PostgreSQL に接続する.
一般ユーザでログインすることが望ましい. (必要がないのに,PostgreSQL データベース管理者でログインすることは避ける)
- (もし展開されていなければ)PostgreSQL 12 を展開
オブジェクトブラウザで,PostgreSQL 12 の左横の「+」をクリックして,展開する.
- 「Databases (データベース)」を展開
左横の「+」をクリックして,展開する.
- データベースの選択
データベースの一覧が出ているので,使いたいデータベースを選ぶ.
- 「Query Tool」をクリック
- SQL を用いたテーブル定義
Query ウインドウが現れる.下記のような 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 ) );
- 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;
- 確認表示
select * from order_records;
SQL 実行結果のファイル出力
上記で説明したQuery ウインドウで, 「Download as CSV/TXT」」と操作する.
Excel をインストール済みのときは Excel が開く.
ファイルに入った SQL の実行
上記で説明したQuery ウインドウで, 「Open File」をクリック.
テーブルの一覧表示と中身の表示と更新(行の追加,行の削除,値の更新)
テーブルの一覧表示
データベース内のテーブル一覧を表示するには, オブジェクトブラウザで, Schemas (スキーマ),public, Tables (テーブル)を展開.
テーブルの中身の表示と更新(行の追加,行の削除,値の更新)
テーブルの一覧表示を行った後,テーブルを右クリックして, 「View/Edit Data」→「All Rows (全ての列を表示)」と操作すると,テーブルの中身が表示される.編集もできる.
このウインドウで,更新(行の追加,行の削除,値の更新)が簡単にできる.