データベース レシートを見てみよう • コンビニやスーパーで買物をするときのレ シートを見てみよう – 何がかいてあるだろうか? – レジで全部打ち込んでいる? – なぜ、打ち込まないのにレシートには商品名や価 格が出てくるの? 図書館の本を探す 図書館の検索システムを見てみよう 何を手がかりに探す? 書名 作者名 シリーズ名 様々な手がかりで探せるのはなぜだろう? データを蓄積する • データが蓄積されていると、いろいろなものを 探すことができる。 • 図書館の場合 – 書名、作者名、シリーズ名、出版社名 等が登録 されているので、どこからでも探すことができる • コンビニなどの場合 – バーコードと商品名、価格などを登録しておくと、 バーコードだけで他のことがわかる データがあると他に何ができる? • 会員証を忘れても、電話番号と名前で探して くれる • オンラインショップの場合、以前に買ったもの がわかる • お店の人にとっては、売れた商品を調べるこ とができる←よく売れる商品を仕入れることが できる どっちが探しやすい? • たとえば、紙に記録してある次の2つを考え てみよう • 1つめの記録の束 – 学年、クラス、名前、性別、クラブが順番に書か れていて書く場所も決まっている – 学年、クラス、名前、性別、クラブが書かれている が、場所は決まっていない データの残し方 • データをためておけば、いろいろなところに利 用できる • でも、何も考えずにためておいても、利用しに くい – 目的のものを探しにくい – 計算したりしにくい データベース • データを蓄積して利用するためには、効率の いい方法で、管理しておく必要がある。 • この管理のためにデータベースが使われる – 特に今は、関係データベースという方法がつかわ れている 関係データベース • 表のようにして、データを管理する レコード フィールド フィールドってなに? • たとえば、Aさんには – 1年1組 – △△高校 – バスケット部 – ××市にすんでいる • といったいろいろな特徴がある。 フィールドってなに? • Bさんにも同じような特徴がある。 – 1年2組 – △△高校 – ハンドボール部 – ◯◯市 フィールドって何? • これらをグループにしてみよう? – 1年1組とハンドボール部はグループになる? – ハンドボール部とバスケット部はグループにな る? フィールドって何? • グループになるもの同士を結びつけて、タイト ルを付けてみよう – 1年1組と1年2組 • クラス •組 – バスケット部とハンドボール部 • クラブ • 部活動 フィールドとは • こんなふうに、それぞれがもっている特徴を グループにして、タイトルをつけることができ る。 • これをフィールド(属性)という レコードとは • AさんやBさんは、フィールドに対して、それぞ れの答えを持っている • Aさんのクラブの属性はバスケット部 • Aさんのクラスは1年1組 • というように、AさんやBさんについてだけ属性 の内容を集めたものをレコードという。 関係データベースでは • 表のかたちにして、 • 縦にフィールド • 横にレコードを書く 一枚の表で大丈夫? • なんでもかんでも1枚の表にしておいて大丈 夫? 一枚の表で大丈夫 • これは、1回の貸出のレシート 貸出番号 R0102365 貸出日 2009008 北畠香織(女) 月額 A 会員 1月2日 商品一覧 1 T2011 DVD めざせ天下統一くにとりものがたり 2 C4967 DVD ガチガチ山さん 一枚にするとどうなるか ・1回に借りる数が多いとどこまでも横に伸びていく ・どこまで伸びるかわからない ・短い人もいる 管理しにくい 複数の表で管理する • データを全部1枚にすると管理しにくくなる 複数の表で管理する事が多い • 複数の表の分け方を正規化という テーブルのデータの区別 • 名前で区別 • 同姓同名は? • 住所で区別 • 家族は同じ住所 主キー • テーブルにあるレコードを区別するための フィールド • 顧客のデータであれば、名前や住所ではなく、 顧客番号をつけて管理する • 生徒も名前やクラスではなく、生徒番号をつ ける 複数の主キー • 貸出データのような場合、1回の貸出を貸出 番号にするが、1度に複数借りる場合がある • 顧客番号や商品番号だけでも難しい – 同じ顧客が何度も借りる – 同じ商品も何度も貸し出される – 1人の顧客が、同じ物を再び借りる • 同じ物を一度に2つは借りないとすれば、貸 出番号と商品番号で、レコードの区別をする ことができる レンタルデータの場合の主キー
© Copyright 2025 ExpyDoc