PostgreSQLとは
PostgreSQLとはオープンソースのデータベースです。基本的な機能が揃っていて、毎年新しい機能が追加されるので勉強には最適です。また企業でもよく使われるので、後で役に立つことがあると思います。
構造
PostgreSQLは複数のデータベースを持つことができ、1つのデータベースの中に複数のスキーマを持つことができ、1つのスキーマの中に複数のテーブル(シーケンス、インデックスなども)を持つことができます。

異なるデータベース間ではデータアクセスが出来ません。同じデータベース間で異なるスキーマ間はデータアクセスができます。
異なるスキーマ間であれば同じテーブル名を使用することができます。アクセスする場合、以下のようにテーブルの頭にスキーマを付けます。
SELECT * FROM スキーマA.テーブルC;
SELECT * FROM スキーマB.テーブルC;
ロール(ユーザ)
PostgreSQLを使うにはロール(ユーザ)を登録する必要があります。カッコでユーザと書きましたが、PostgreSQLではログインやデータベースのアクセス制限などはロールで行います。pgAdminなどでもユーザという言葉が出てきますが、ロールに読み替えて下さい。
ユーザ → ロール
ロールですが、ログインに使えるログインロールとログインに使えないグループロールがあります。 ログインロールだけでもアクセス権限の制御はできますが、 グループロールにテーブル等の権限を与え、ログインロールにグループロールを
を関連付けるだけで、グループロールから設定した権限情報を引き継ぐことができるため、権限をまとめやすいです。
※ログイン許可、スーパーユーザ、データベース作成、ロール作成等は引き継げません。

ログインロールに管理権限を付けるとスーパーユーザと呼ばれます。
イントール時にはpostgresというスーパーユーザが存在しますが、後から別ロールに管理権限を付け、スーパーユーザとすることもできます。
データベース、スキーマ、テーブルなどを作成したとき、作成したログインロールをオーナーを呼びます。
オーナーは作成したものを変更したり、別ロールに権限を与えたり、各種の操作する権限を持ちます。

ページのトップへ戻る