PostgreSQL_3

f:id:kentaro-mori36:20180523210936j:plain<最近気に入ってる配置

 

Today's last day of PostgreSQL.

7章 リレーショナル データベースのデータモデリング

データベースの表は、データのモデリングにより構築される

分析設計    データベース構築    データベース管理システム

        

データモデリング

「で、どこまでの範囲で実装したいの?(お金あるのん?)」

ーシステムの業務対象を明確にする

ーシステムの情報を標準化し、データベースとして扱えるようにする

 

設計段階:

 

概念設計 → ER

論理設計論理テーブル

RDBMSに依存する設計物理テーブル

 

データモデル

・システムが扱う情報を次の要素で表現する

 

ーエンティティ(情報を持つ物理的、論理的なまとまり)

・システムの管理対象

 

ー属性(アトリビュート)(エンティティが持つここの情報)

・エンティティ間の関連を表現する情報

 

ーリレーションシップ(エンティティ間の関係)

・エンティティ間の関連を表現する情報

 

ー識別子(エンティティの集合の中で、個々を見分けることができる属性)

・エンティティの実際のデータを区別するために使用する属性

 

エンティティ

・システムが扱う対象となるもの

・情報を保有しているもの

・・エンティティは情報を保有する物理的、論理的に区別ができる対象です。

 

リレーションシップ(関連)

・エンティティ間の関連を表現する

ー関連間のエンティティの数の対応を表現する

ー関連の必然性/任意性を表現する

 

アトリビュート(属性)

・エンティティを特徴づける情報の項目

 

インスタンス

・エンティティは対象を属性で定義したもの

インスタンスは実体

ーエンティティの属性は実際の値を持ち、1つの実態を表す

 

キー(識別)属性

・エンティティの複数のインスタンスの中から1つを特定することができる値を持つ

    属性。

 

データモデルの表現

ER図によりシステム内のエンティティ、属性、リレーションを表現する

・リレーションはビジネスモデルにより異なる

・リレーションや主キーはテーブル構成に反映される

IE (Information Engeneering )

 

クラス        :エンティティ名

クラス番号:主キーとなる属性

クラス位置:主キー以外の属性

学年           :主キー以外の属性

クラス名    :主キー以外の属性

担当           :主キー以外の属性

 

//ツールにもバグはあるんだよ。ツールに使われない、ツールを使おう

//手書きできなきゃね

 

ボトムアップ アプローチによるモデル化(参考)

・既存の情報をデータベースとして扱うためにモデル化する

   ・伝票、帳票、画表などで扱う情報をモデル化する。

・情報を正規化する

  ・データの集合をデータベースで正しく扱えるように形を整える

 

トップダウンアプローチ

・システムの有るべき姿を分析し、エンティティを決定するほうほう

ボトムアップアプローチ

・既存のシステムで使用している情報源をもとに、エンティティを決定する方法

 

第ー正規化手順

二つのエンティティを一つに統合する。

 

 

 

8章オブジェクトの作成

 

データベースオブジェクト

・データベースの構成をオブジェクトとよぶ

・基本オブジェクト

ー表

ービュー

ー索引

 

表の作成

・基本構文

   CREATE TABLE 表名 (列名1、データ型、、、)

 

ー名前は命令規則に従う

ー列のデータ型

  ・データ型の名前、精度、桁数、扱えるフォーマットなどは製品によって異なる

 

表の作成例

CREATE TABLE people (code INT, name VACHAR(20), birthday DATE, weight FLOAT);

 

列の属性の指定

CREATE TABLE 表名 (列名、データ型 属性1  属性2・・[,];

 

列に自動的に値を入れる機能

・列にデフォルトの値を入れ

 

表の外部参照

 

表の構成変更

ALTER

・データベース構成要素の変更SQL

     列を追加・削除する

・副問い合わせSELECT文により、表をコピーする

 

Drop table には rollbackがないの?

 

ビュー

・ビューは表のフィルタの機能を提供する

ー表の限定された列と行の情報のみをみせる

ー見せたくない/見たくない場所は隠す

ー複数の表を結合してみせる。

ー列の名前を変更してみせる。

 

 

 

8章データベースアクセス権限

 

データベース管理システムとデータベース

データベースのロール
・データベースインスタンスの構築は、管理ユーザが行う。
・データベースのアクセス権限はロールに与えられる
・データベース管理システムへの接続

データベース管理システムのタイプにより、ユーザの持つアクセス権についての方針は異なる。

 

アクセス権限
アクセス権はデータベースを操作できる権限
管理権限
利用権限
管理ユーザは全ての権限を持つ

 

ロール(ユーザ)の作成と削除
ログインの管理やデータベースなどの権限の設定をロール単位で行う。
ロールの作成
ロールの変更
ロールの削除


データベースとオブジェクトとユーザの関係
ユーザが所有するアクセス権については、製品により様々な形態があります。
アクセス権の付与ー所有者が許可する

 

アクセス権の付与
スキーマとhデータベース
所属する空間(名前空間)で1つのデータベースに複数作成することが可能。

 

アクセス権の付与と削除
・アクセス権の付与
GRANT 権限 ON オブジェクト TO ユーザ名
・アクセス権限の削除
付与された権限をユーザから削除する
基本構文
REVOKE 権限 ON オブジェクト名 FROM ユーザ名;

 

Listening song...