データベース 外部キー
ホーム > 発行済み
読者の情報処理試験合格(シスアドから高度まで)を目指しています。
作者は、アプリケーションの開発を行なっているエンジニアです。
情報処理試験の知識(理論)を、日々の業務(実践)にどう生かしていくか、その辺りの事を意識
して、発行していきます。

データベース 外部キーとは


                                          
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
        ★★ 『情報処理試験のお勉強(千里の道も一歩から)』 ★★
                           2004/07/25 第28号
        知識の習得は、本当に楽しいものです。
        それぞれの目標に向かって、一歩ずつ踏出して行きましょう。
     
     ----------------------------------------------------------------------
        まぐまぐ:814 めろんぱん:97 メル天:69 カプライト:74
        E-Magazine:87 Macky!:32 melma:17      総発部数:1190
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
     
      秋期にネットワークに関する出題がある科目を受験しようと考えている方。
     
      テクニカルエンジニア(ネットワーク)、情報セキュアド、ソフ開、基本情報、
      上級・初級シスアド、アプリケーションエンジニアを受験しようかと考えている
      方は、まちがいなく、申込みしておいた方が良いですよ。
      
      試験範囲の技術習得の手助けになります。
      
      ・「5分でわかる最新キーワード解説」
      ・「ネットワーク早わかり講座」
      ・「運用コストを減らすワザ50」
      ・「すご腕アナリスト市場予測」
     
      今すぐ、無料登録をして、試験対策の準備が出来る環境を、作っておくことを
      お薦めしています。
     
       実力の習得は、日頃の努力です。 貪欲に知識の習得をしましょう。
       
       ▽ http://jstudy.fc2web.com/keyman2.html
     
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━


      情報処理試験に出題される問題は、試験の区分をまたいで出題される
      ことが多くあります。 特に基本を問うような問題では、そのような傾向が
      強いです。 基本の力を養う事により、午後の問題も解ける様になります。
      あいまいな所を、着実に理解して行く事が重要ですね。
     
     
     
       『基本情報技術者試験 午前平成14年秋問70』
     
     
      関係データベースのテーブル間に関連(外部キーによる主キーの参照)を設定
      する目的として,適切な記述はどれか。
     
      ア 関係する相互のテーブルに於いて、どちらかのレコードの更新や削除を
        行うとしたとき、他方のレコードに対して参照一貫性が満たされるよう
        に制約を持たせる。
     
      イ 関係する相互のデーブルの格納場所を近くに配置することによって、検
        索・更新を高速に行う。
     
      ウ 障害によって破壊されたレコードをテーブル間の相互の関係から可能な
        限り復旧させる。
     
      エ レコードの削除、追加の繰り返しによるレコード格納エリアの虫食い状
        態を防止する。
     
     
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
      メールマガジンがずれて見える方は、
       http://www.mag2.com/faq/mua.htm を参考にしてください。
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━



合格を勝取るにはコレ!! 絶対に読んでおくべきです。

▽ http://www.mag2.com/m/0000120201.htm



     
       あるデータから、テーブルを作成する時に、より効率良く矛盾無くデータ
       を格納するために、正規化を行ないます。
       正規化を行なうと、テーブルは複数に分かれます。
       その別れてしまったテーブル間に、関係を正しく持たせるために外部キー
       を使用します。
     
       外部キーという言葉と共に、参照制約という言葉も一緒に覚えてください。
       テーブルに外部キーを付けると、参照制約が自動的に付加されます。
     
       参照制約が付加されたテーブルで、登録・更新・削除を行なおうとすると
       、DBMSが参照制約のチェックを行ない、違反する場合には、処理が行
       なわれず、エラーを返します。
     
       では、実際に動きを見てみましょう。
       以下のテーブルがあるとします。
     
     
       社員                部門
       ┌────┬────┬────┐  ┌────┬────┐
       │社員番号│社員名 │部門番号│  │部門番号│部門名 │
       ┝━━━━┿━━━━┿━━━━┥  ┝━━━━┿━━━━┥
       │ 001  │ 田中 │ A1  │  │  A1  │ 営業 │
       ├────┼────┼────┤  ├────┼────┤
       │ 002  │ 鈴木 │ A1  │  │  A2  │ 総務 │
       ├────┼────┼────┤  └────┴────┘
       │ 003  │ 佐藤 │ A1  │
       ├────┼────┼────┤
       │ 004  │ 福田 │ A2  │
       ├────┼────┼────┤
       │ 005  │ 渡辺 │ A2  │
       └────┴────┴────┘
     
       外部キーの設定(社員テーブルのCREATE文の中で)
       CONSTRAINT 外部キー名 FOREIGN KEY (部門番号) REFERENCE 部門(部門番号)
     
       上記のSQL文を、社員テーブルのCREATE文の中で行なうと、社員テーブル
       の部門番号を外部キーに、部門テーブルの部門番号を参照先にした参照制約
       が作成されます。
     
     
     
       ここで、以下の処理(社員テーブル側)は、行なうことが出来ません。
       
       (×) INSERT INTO 社員(社員番号,社員名,部門番号) 
                 VALUES('006','高田','A3');
     
       (×) UPDATE 社員 SET 部門番号='A3' WHERE 社員番号='001';
     
       理由としては、部門テーブルの部門番号には「A3」が存在しないからです。
       参照先に存在しないものは、参照出来ないということですね。
       上記処理を行ないたい時には、部門テーブルに「A3」のレコードを登録した
       後なら、実行することが出来ます。
     
     
     
       以下の処理(部門テーブル側)も行なうことが出来ません。
       
       (×) DELETE FROM 部門 WHERE 部門番号='A1';
     
       理由としては、参照されているデータは、削除することが出来ないという
       ことですね。
       部門テーブルの部門番号「A1」は、社員テーブルの1,2,3行目で、参照
       されています。
     
       上記処理を行ないたい時には、社員テーブルの1,2,3行目を削除して
       参照しているデータが無くなった後なら、実行することが出来ます。
     
     
     
       では、選択肢を見てみましょう。
     
     
     > ア 関係する相互のテーブルに於いて、どちらかのレコードの更新や削除を
     >   行うとしたとき、他方のレコードに対して参照一貫性が満たされるよう
     >   に制約を持たせる。
     
       これが正解ですね。
       外部キー、参照制約は、テーブル間の矛盾(ありえない参照)を行なわない
       ために使用するものですね。
     
     
     > イ 関係する相互のデーブルの格納場所を近くに配置することによって、検
     >   索・更新を高速に行う。
     
       参照するテーブルは、サイトが分散されていない方が、高速に検索・更新
       出来ます。
       でも、それは設問の「外部キーによる主キーの参照」とは別の話ですね。
     
     
     >
     > ウ 障害によって破壊されたレコードをテーブル間の相互の関係から可能な
     >   限り復旧させる。
     
       これも、設問の「外部キーによる主キーの参照」とは別の話ですね。
     
     
     > エ レコードの削除、追加の繰り返しによるレコード格納エリアの虫食い状
     >   態を防止する。
     
       これも、設問の「外部キーによる主キーの参照」とは別の話ですね。
       防止はすることが出来ませんが、テーブルの再構築を行なうことにより
       デフラグ状態を緩和することが出来ます。
       緩和する事により、検索等が早く行なえる様になります。
     



合格を勝取るにはコレ!! 絶対に読んでおくべきです。

▽ http://www.mag2.com/m/0000120201.htm



     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
     
     『編集後記』
     
       既に、秋期の情報処理試験の申込みをされている方も多いと思います。
       申込みの締め切りは、
     
       郵便局窓口受付が 平成16年8月16日(月) 午後3時頃まで
     
       インターネット受付が 平成16年8月23日(月) 午後8時まで
     
       となっていますね。
       申込みをされていない方は、早めに申込みをしましょう。
     
       JITEC  http://www.jitec.jp/
     
     
     『お願い』
     
       今回、受験を考えている方などに、情報処理試験のお勉強
       (千里の道も一歩から)を、紹介してあげてください。
       このメールマガジン自身も、千里の道を一歩ずつ、着実に歩んでいきます。
     
      「情報処理試験のお勉強(千里の道も一歩から)」
       まぐまぐ  :http://www.mag2.com/m/0000120201.htm
       めろんぱん :http://www.melonpan.net/mag.php?005485
       メル天   :http://melten.com/m/16380.html
       カプライト :http://cgi.kapu.biglobe.ne.jp/m/8670.html
       E-MAGAZINE :http://www.emaga.com/info/megafri.html
       Macky!   :http://macky.nifty.com/cgi-bin/bndisp.cgi?M-ID=megafriday
       melma!   :http://www.melma.com/mag/20/m00102220/index_bn.html
     
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
       『 情報処理試験のお勉強(千里の道も一歩から) 』
       作者  :メガフラ(megafriday@yahoo.co.jp)
       HP  :http://jstudy.fc2web.com/
       発行周期:週間
     
      以下のスタンドより、発行させて頂いています。
      配信登録、配信中止も以下のアドレスよりお願いします。
     
      まぐまぐ  :http://www.mag2.com/m/0000120201.htm
      めろんぱん :http://www.melonpan.net/mag.php?005485
      メル天   :http://melten.com/m/16380.html
      カプライト :http://cgi.kapu.biglobe.ne.jp/m/8670.html
      E-MAGAZINE :http://www.emaga.com/info/megafri.html
      Macky!   :http://macky.nifty.com/cgi-bin/bndisp.cgi?M-ID=megafriday
      melma!   :http://www.melma.com/mag/20/m00102220/index_bn.html
     
     ----------------------------------------------------------------------
     <免責事項>掲載されているいかなる情報により損害を被っ
           ても、当方では責任を負いませんことをご了承ください。
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
     





情報処理試験のお勉強(千里の道も一歩から) (マガジンID:0000120201)

メールアドレス:
メールアドレス:

Powered by まぐまぐ


メインメニューに戻る

SEO [PR] 爆速!無料ブログ 無料ホームページ開設 無料ライブ放送