情報処理技術者試験(データベーススペシャリスト)のキーワードメモ(ニ)

■DB設計のアプローチ

  1. トップダウンアプローチ
  2. E-R図作り⇒属性洗出し⇒正規化
  3. ボトムアップアプローチ
  4. 属性洗出し⇒正規化⇒E-R図作り

■連関エンティティ

多対多の関係が存在する時は、連関エンティティを追加する
例:ユーザ、興味二つテーブルがあって、一人のユーザは複数興味を持っているので、ユーザ_興味というテーブルの追加でそのリレーションを分離できる

■高速化手法

  1. 導出属性持つ
  2. 導出属性を事前に計算しておいて、属性として持つ方法
  3. 属性を重複して持つ
  4. よく参照する表の列を追加してアクセスを速くする方法
  5. 非正規化
  6. 属性をまとめて1つ表にする。第3正規形まで正規化せず、第2正規形又は第1正規形を使う手法です。

■サブタイプの切り口

排他的サブタイプの切り口は一つに対して、共存的サブタイプの切り口は別々です。

■カーソル

定義:DECLARE カーソル名 CURSOR FOR SELECT文 [FOR {READ ONLY | UPDTE [OF 列名[, …n]]}]
OPEN カーソル名
FETCH カーソル名 INTO [変数リスト]
CLOSE カーソル名

ドメイン定義

ドメインとは、制約付きのデータ型です。例えば電話番号はあるフォーマットでなければならない。電話番号フォーマット制約をつけて定義したデータ型はドメインです。
定義:CREATE DOMAIN
oracleの定義:create or replace type タイプ名 as object ( 属性名 型, …)