kobasaです(´ω`*)
ITパスポートの資格勉強の続きです。
噂の猫ゲー「Stray」をプレイしました。キーボードの上に乗ったり、積みあがった本を倒したり、猫がしそうな行動ができて良いですね( ˘ω˘ )障子に頭つっこんで破いたりできるんかな?
データベースについて(テクノロジ系)
データベースとは
データベースとは情報の集まりのことで、データベースに情報を集めるとデータを一元管理することができる。データベースにはデータの保存方法によって、さまざまな種類があるが現在最も普及しているのが関係データモデルである。
関係データベース(Relational Database):
データを「表」で管理するデータベース。表の列を「属性」行を「レコード」表自身を「テーブル」と呼ぶ。行を構成する1つ1つの要素をフィールドと呼ぶ。
主キー:
表の中からある特定の行を識別するための、行を一意に識別するための列のこと。
一意に識別するためには、重複する値が無いこと、データが空(NULL)でないことの条件がある。
外部キー:
別の表の主キーを参照する列のこと。関係データベースでは、データの内容や種類ごとに表を分けて管理するため、外部キーを使用して別の表のデータを参照する。
関係データベースのデータベース設計
E-R図(Entity Relationship Diagram):
データの関係性をエンティティ(実体)とリレーションシップ(関連)の2つの概念を用いて表した図。
関係データベースを作成する際の設計図になる。
- エンティティ:
管理する対象。「名詞で表せるもの」 - リレーションシップ:
エンティティ同士の関係。「動詞で表せるもの」。1対1、1対多、多対多の関係がある。
正規化(Normalization):
データが重複したり、データ更新の際に矛盾が生じたりしないように表を分けること。
例えば、生徒と先生の表を分けておかないと、結婚した先生の名前を変更するときに変更箇所が複数になってしまう。表を分けていれば変更箇所は1箇所で済む。
データベース管理システム(Database Management System:DBMS)
データベース管理システムとはアプリケーションソフトウェアの要求に応じてデータベースを操作するシステムのこと。アプリケーションソフトウェア自体は直接データベースを操作しない。
SQL(Structured Query Language):
関係データベースを操作するための言語。アプリケーションソフトウェアからSQLを使用してDBMSに対して命令を出すと、DBMSがデータベースを操作してアプリケーションソフトウェアに結果を返す。
データベース管理システムの3つの機能
・データ操作
6つの操作方法の組み合わせと繰り返しで、データを追加したり目的のデータを取り出したりできる。
選択 | 表からある特定の行のみを取り出す操作 |
挿入 | 表に行を追加する操作 |
更新 | 行内のデータを変更する操作 |
削除 | 表から行を削除する操作 |
射影 | 表からある特定の列のみを取り出す操作 |
結合 | 複数の表を1つにする操作 |
・トランザクション管理:
トランザクションとは関連する複数の処理のまとまりのこと。
途中の処理が失敗したときはトランザクションを最初まで戻すことで作業全体の整合性を保つことができる。トランザクションが正常に完了した際に、データベースの更新内容を確定することをコミットという。
・排他制御:
複数の人が同じデータを同時に更新しようとした場合に、データに矛盾が生じないようにする機能。
データベースに対するデータの読み書きを一時的に制限するロックという機能を使用する。
コメント