TOP書籍連動> 解答
徹底攻略ORACLE MASTER Bronze DBA 10g問題集
徹底攻略ORACLE MASTER Bronze DBA 10g問題集

第9回:オブジェクトの管理(2)
著者:小林 圭
編者:ソキウス・ジャパン   2005/12/27
前のページ  1  2
解答

   1ページ目の問題の解答を掲載します。解答には、問題の正解やその理由だけでなく、用語や重要事項などが詳しく解説されています。
第1問の解答:B

   データベース中のデータが、データベース管理者やアプリケーション開発者によって定義された規則に従って格納されていることは重要です。このようなデータ整合性を規定するために表に適用できる規則のことを制約といいます。ここではまず、制約の種類について確認しておきましょう。

【制約の種類】
制約 説明
NOT NULL制約 表の列値としてNULL値を禁止する
一意キー制約 列または列の集合について、表内の2つの行の値が重複することを禁止する
主キー制約 NOT NULL制約と一意キー制約の内容を同時に保証する。表には最大1つの主キー制約を指定することができる
チェック制約 条件を指定し、条件に対してFALSEに評価されるデータを禁止する
外部キー制約
(参照整合性制約)
2つの表を関連付け、参照する表内に含まれていない値の入力を禁止する
A. NOT NULL制約と外部キー制約は同じ列に同時に設定できます。記述は誤りです。
B. 一意キー制約ではNULL値の入力を禁止していないため、正しい記述です。
C. 値が親キーと同じであるかどうかをチェックするのは、外部キー制約です。記述は誤りです。
D. 主キー制約は必須ではありません。記述は誤りです。
   したがって、Bが正解です。


第2問の解答:B、C、F

   設問から、HRスキーマ内にEMPLOYEES表とDEPARTMENTS表が存在することがわかります。外部参照を行う場合、同じスキーマ内でなくても、アクセス権限があればほかのスキーマの表を参照することが可能です(E)

   図中の「参照表」にHR.DEPARTMENTS表が指定されていることから、DEPARTMENTS表は参照される表だとわかります(D)。したがって、EMPLOYEES表のDEPARTMENT_IDに対する外部キーを設定しています(C)。これらの表の間には、DEPARTMENTS表が親表でEMPLOYEES表が子表であるという関係性がありますが、制約を作成する場合に外部キー列と参照先の列名は同じである必要はありません(F)。

   EMを使用して制約を作成すると、デフォルトでは、Oracleが制約名を設定することを意味する(nnは特定の番号。設問の図中では11)が「名前」欄に表示されます(A)。設問のように明示的に制約に名前を指定しなかった場合、OracleサーバーがSYS_Cxxxxxxという書式で自動的に名前を設定します(B)。制約の作成直後、一時的にEM上で制約名がと表示されることがありますが、これは設定された制約の名前ではありません。制約の名称に大なり記号および小なり記号(< >)は使用できません。

   以上よりBCFが正解です。


第3問の解答: B、E

   索引は、表に対して対応付けるオブジェクトです。1つ以上の列に索引を作成することにより、表に対するSQL文の実行を高速化することができます。索引は必要に応じてOracleサーバーが暗黙的に使用しますので、索引の有無によってSQL文を変更する必要はありません。

A. 表への行の追加、変更、削除に応じて索引は自動的にメンテナンスされます。正しい記述です。
B. 表へのSELECT文によるアクセスのパフォーマンス向上が主な目的です。記述は誤りです。
C. 表と索引はI/O衝突を避けパフォーマンスを向上させるために、それぞれ別の表領域に分けて格納できます。正しい記述です。
D. 列の組み合わせが違う複数の索引を、1つの表に対して作成できます。正しい記述です。
E. 索引は暗黙的に使用されます。専用のSQL文を記述する必要はありません。記述は誤りです。
   誤りを指摘する問題ですので、BEが正解です。


第4問の解答:B、C、E、F

   PL/SQLやJavaで記述されたOracleデータベースに格納されているプログラムをデータベース常駐型プログラムと呼び、以下のような種類のプログラムがあります。

【データベース常駐型プログラム】
種類 説明
ストアドプロシージャ コール元に値を戻さないプログラム
ストアドファンクション コール元に値を戻すプログラム
パッケージ 関連するプロシージャ、ファンクションや変数などをグループ化したプログラム
データベーストリガー 表やビューに関連付け、自動的に起動するように設定されたプログラム
   したがって、BCEFが正解です。

前のページ  1  2

書籍紹介
徹底攻略ORACLE MASTER Bronze DBA 10g
問題集

徹底攻略ORACLE MASTER Bronze DBA 10g問題集 Bronze DBA10gの内容を徹底的に分析し、試験対策に必要な問題を全311問に凝縮。合格につながる精錬した試験対策問題を豊富に用意しているので、短期間で効率よく学習できます。Oracleのセットアップ方法をはじめとして、ネットワークの構成やインスタンスの管理、データベース記憶領域の管理など、試験範囲をもれなく網羅しています。特にOracle Enterprise Manager 10gの設定方法は画面と図を使って解説。最終章の「総仕上げ問題」では、より本番に近い問題を厳選! 合格に必要な知識がこの1冊で学べます。
発売日:2004.09.21発売
販売価格:2,940円(税込)
小林 圭
著者プロフィール
小林 圭
日立ソフトウェアエンジニアリング株式会社 教育センタ部 オラクル認定講師。入社時から現在までインストラクターとして活動。SQL、PL/SQLからデータベース管理まで幅広い分野を担当している。ORACLE MASTER Bronze OracleDatabase 10gは全国第1号の取得者として認定された。
主な取得資格:Oracle Master Platinum8i、ORACLE MASTER Bronze Oracle Database 10g、テクニカルエンジニア(データベース)


株式会社ソキウス・ジャパン
編者プロフィール
株式会社ソキウス・ジャパン
クォリティ・メディア・カンパニーを標榜する出版社。2001年11月設立。2002年10月より株式会社インプレスと協業し、これまで30冊近い「徹底攻略問題集」を編纂する。また、自社で月刊「オープン・エンタープライズ・マガジン」を発行、発売している。
http://www.sociusjapan.co.jp/


INDEX
第9回:ユーザーの管理(2)
  問題
解答