skillup

技術ブログ

Database

Postgresメモ(データベース、スキーマ、他pgadminなど)

投稿日:

postgresをちょこちょこ触っており、超基礎的な事に関してMySQLでは触れられていないネタなどについて。

以前のリンク

Postgresの基礎(主にMySQLとの違いなど)

ロール

以前も説明しましたが、MySQLで言うとユーザーのようなものになります。

データベース、スキーマ、テーブル

データベースの中にデータベース、スキーマ、テーブルというものがあり、データベースの上位にデータベースクラスタがあります。

階層で言うと、下記のようになります。

  1. データベースクラスタ(ディフォルトだとpostgresとtemplate0などが入っているひとまとまりのグループ)
  2. データベース(ディフォルトだとpostgres)
  3. スキーマ(主に権限の制御目的でテーブルの上位概念。ディフォルトだとpublic、全公開)
  4. テーブル(MySQLの通常のテーブルと同様です。)

イメージをつかむにはリンクを読めばすぐに解決します(汗)

PostgreSQLにおけるデータベース、スキーマ、テーブルの関係

pgadmin

phpmyadminのpostgre版。

dockerでpostgres入れた時によく使われます。

これ自体はpostgresと別サーバーになっておりリモートで繋ぎます。最初にpostgresのサーバー情報を入力するのはこのためです。

データ変更がディフォルトだとできないです・・・(selectでデータを出した時など)

テーブル名クリック後、「データビュー表示」でデータを出した場合に画面から保存ができます。

-Database
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

cakePHPでのマイグレーション

開発を続けているとデータベースのカラムの構造が変更するってことはしょっちゅうですが、管理がいい加減だとメンバー間でテーブルの構造が変わっていたり、本番と開発で違ってくるなどのトラブルが続出します。 そ …

no image

transactionが切れた場合のロックの復旧方法

transactionをスタートしたまま、commitせずにプログラムを途中で止めた場合の処理について。 不用意にプログラムを止めないようにしましょう。 Contents1 ロックのメカニズム1.1 …

no image

JavaでのSQLの書き方

ちょっと小ネタです。 通常SQLを記述する場合、縦に分けて書くのが見た目にも見やすく、保守性も高いです。 例として

と書くよりは、 [ …

no image

SQLの高速化について&explain

本日はSQLの高速化について。 高速化といってもさまざまなテクがあると思うのですが、代表的な考え方に関して。 Contents1 高速化に関して1.1 index1.2 ディスクアクセスを減らす1.3 …

no image

SQLインジェクション

セキュリティ関係の知識がぬるいのでちょっとお勉強。 知っていることもあるが復習もかねて勉強を。 Contents1 SQLインジェクションとは?2 被害3 対策4 参考サイト・書籍5 ソース SQLイ …