- ベストアンサー
データベースの正規化のところで質問があります。
データベースの正規化のところで質問があります。 会員とビデオがエンティティの例なんですが、 「レンタルビデオ店で会員が1度に複数のビデオを借りた場合、ビデオの情報が繰り返し項目になる」という説明が分かりません。 宜しくお願いします。
- j6305636
- お礼率22% (79/344)
- その他(データベース)
- 回答数2
- ありがとう数17
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
仮に、会員情報も、貸し出し情報も全部一つのテーブルで登録するとします。 必要な項目は・・・ 会員番号・氏名・住所・電話番号(他、個人情報。) 貸し出したビデオのタイトル(又は、ビデオIDコード)・貸出日・返却期限 といったところでしょうか。 さて、このテーブルの一行(一レコード)は、一人一行となるでしょう。 レンタルビデオ店は、大概複数のビデオが借りられますね。と一人で2本3本と借りていく人がいますし、何本貸すことになるかも解りませんね。人によっては一本だし、他の人は5本くらいかも・・・ では、一行に、何本になるか解らないビデオIDや貸出日・返却期限を登録するには、どうしましょうか? ビデオID1・ビデオID2・ビデオID3・・・とフィールドを並べるのが一番に思いつく方法です。 これを繰り返し項目と言います。 ところで、フィールドはいくつ並べたらいいのでしょうか?今、店の規則で一人5本までとしているから、5つ?もし、隣接店との競争の関係で一人10本に改訂されたら、どうします?とっても拡張性に問題がありますね。これが繰り返し項目を嫌う理由の一つです。もう一つは、データの検索や集計がすごく面倒になります。(SQLに話が進まないと今は理解できないかもしれません。) 別の解としては、一人一行を放棄して、ビデオテープ毎に一行を作る方法もあるでしょうが、そうすると、今度は、同じ人の住所や電話番号を山ほど登録する羽目になります。 会員さんが引っ越しをして住所が変わったら、いったいいくつのレコードを更新することになるのでしょうね。ぞっとする話であることだけは確かです。 どちらも、データベースの設計では避けるべきとされる事項です。これを考えるための方法論の一つが正規化です。 この物語の次の作業は、会員情報テーブルと、貸し出しテーブルの二つのテーブルに分離して(更にビデオ情報が要るから、3つかな?)・・・と続くのでしょうが、その辺はもう一度続きを読んで見てくださいね。
その他の回答 (1)
- bakakyatap
- ベストアンサー率38% (115/299)
レコードを増やすという事です。RDBでは、その「ビデオの情報」で別テーブルを作りなさい。 となりますね。ID(シーケンス番号)は設計によりますが、1回のレンタルで一つのテーブル、そこに「ビデオの情報」のIDを入れることになりますね。 その逆でも可能ですが。
関連するQ&A
- データベースでの質問です。
データベースの正規化で第一正規化、第二正規化、第三正規化 がありますが 「第一正規化」では、データの重複をなくす事をする 「第二正規化」では関数従属をおこないxの値が決まればyの値が決まるのと同じように あるキーが決まれば、他のキーも決まるようになること 「第三正規化」では関数従属をなくすと聞いたんですが、意味がわかりません 解釈としてはキー項目を2つ組み合わせてある項目を決めると解釈であってるでしょうか?? 第一正規化と第二正規化はこの解釈でいいでしょうか?? バカな質問ですいません データベースの正規化の理解に苦しんでいます 回答おねがいします。
- 締切済み
- その他(データベース)
- 第3正規化とは何でしょうか
データベースの第三正規化がよく分かりません。 第二正規化との違いがよく分かりません。 第2→主キーの一部に従属する項目を分離 第3→主キーに従属しない項目を分離 という説明があったり (このテキストでは、主キーを常に複合キーとしているようであり、その複合キーの(2つとして)どちらかを主キーとする表をつくるのが2で、その複合キーのどちらとも関係しない列を主キーとする表を3としているようなのですが、そもそも主キーは複合キーとは限らないはずだと思うのですが・・) 別のテキストでは(ある基本情報技術者試験のテキスト) 第2→関数従属 第3→推移的関数従属 という説明があったりします(推移的関数従属というのをネットで調べてみましたが、その概念がここでどう当てはまるのか分かりません) このへん教えていただけませんでしょうか? あるいは、分かりやすくある程度体系的に教えているページや本があれば教えてください。
- 締切済み
- 情報処理技術者
- データベース情報無損失分解、第四正規形について
データベースの学習をしています。 以下の語を説明する文章がそれぞれどれかわかりません。 用語 (1)情報無損失分解 (2)第四正規形 (a)リレーションスキーマリレーション中の結合従属性(X1, X2, ...., Xn)が自明な結合従属性であるか、各XiがRのスーパーキーである場合に成り立つ (b)リレーションスキーマR中の多値従属性X→Yが自明な多値従属性であるか、XがRのスーパーキーである場合に成り立つ
- 締切済み
- 情報工学
- 「データベース」の意味について
本当に単純な質問なのですが,考えているうちに分からなくなってしまいましたので,質問させていただきます. 「データベース」の意味についてはWikipediaなどでも出ているので理解はできるのですが以下の場合はデータベースというのでしょうか? 1. 収集するデータの項目を決めて,Microsoft AccessでTableを作ったがデータは入っていない. 2. 収集するデータの項目を決めて,Microsoft Excelで1行目に項目名を入力したがデータは入っていない. 上記の場合データが入っていない箱を作ったことになりますが,それでも「データベースを作った」と言えるのか?ということです. また,箱を作った人とデータを入れる人が別の場合は,「データベースを作った」人はどちらになるのでしょうか? よろしくお願いいたします。
- 締切済み
- その他(データベース)
- データベース暗号化について教えて下さい。
データベース暗号化について教えて下さい。 データベースの項目暗号化について下記事項等々に付き調査中です。 宜しくお願いします。 現状の暗号化方向(考え方) 1)個人情報および特定情報項目の暗号化を考えている。 2)データベースはOracle10g以降で検討中。(予定) 3)現行DB2からのデータ移行は必要。(予定) 4)SQL*PLUS、コマンドフロンプト等の開発環境では暗号化なしで使用したい。 (ユーザ/パスワードで暗号化ON/OFFなどの設定/利用としたい) 5)ネットワーク上はSSL通信などを検討中。 現状の懸念事項 DBをOracle10g。Oracleツールで対応を考えるが次の事項懸念あり。 1)Oracleツールを利用する事で暗号化として十分か? 2)Oracleツール利用の場合、インタフェースを二重化し、 利用者(AP開発者、)にOracleツールを見せないことを想定するが一般的にそこまでするのか? 確認ポイント 1)上記、懸念事項について御回答頂き度。 2)項目暗号化の推奨方法について a.一般的なDB暗号化方式を教えて下さい。(複数方式。比較検討のため) b.項目暗号化の方法について教えて下さい。(複数方法。比較検討のため) c.Oracle社正式ツールあれば教えて下さい。(有償?無償?有償はいくら?) d.その他。暗号化に関する弊害内容、留意事項、事故例等々。
- ベストアンサー
- Oracle
- データベース利用について
ご質問をさせて下さい。 商用にてデータベースを利用予定なのですが、 ネット上で大量の顧客情報を管理し、尚且つその情報を必要としている企業が そのデータベースにアクセスできるようなシステムを作りたいと思っています。 しかし元々専門知識が全くないので、 どの程度の規模のデータベースを用意すればいいのかが分かりません。 また、サーバーとデータベースの関係も良く分かりません。 例えばオラクルはデータベースソフトというのは分かるのですが、 そのソフトを使って大量のデータを管理するとしても、 その大量のデータ自体はサーバーにあることになりますよね? ではそのサーバーは自前で用意するしかないのでしょうか? もしくはレンタルサーバーで大丈夫なのでしょうか? またホームページのレンタルサーバー(もちろん法人用)を提供している ところなどでは、そういうのは難しいのでしょうか? 要はレンタルサーバーなどがあるというのは分かるのですが、 どの程度の規模のものまで可能なのかとか、 大手はどこなのかとかが分からなくてイメージが掴めません。 尚、規模としては最初は小規模なものですが、 将来的には上限のない、なるべく多くの顧客情報管理を目指す予定です。 と、基本的なご質問で大変申し訳ないのですが、 ヒントになるようなことだけでも構いませんので、 アドバイスを頂けますでしょうか。
- 締切済み
- インターネットビジネス
- 個々にデータベース作成?
よろしくお願いします。 movabletypeでblogを作成していますが、 複数設置する場合は、個々にMySqlのデータベースを作成する必要がありますか? 現在、レンタルサーバーで運用中で、MySQLは2個までと制限があります。3つ目を作成したいのですが、同じデータベース上に設置しても問題ないのでしょうか?
- ベストアンサー
- MySQL
- ウェブサイトとデータベースを連動させるには
友人のカーディーラーからウェブサイトのデザインを頼まれました。 複数の画像が表示させられる形式で、車種年式メーカーなど10項目ほど車の情報を画像の脇にのせたいとのことです。 友人は車の情報をデーターベースで管理し、こっちの情報を更新すると、 ウェブサイトの情報も更新させるようにしたいといいます。 このようにウェブサイトとデータベースを連動させるにはどうしたらよいでしょうか? エクセルだと画像の管理ができないので、画像管理できるデータベースソフト(ウェブと連動できるもの)も教えて頂けると大変助かります。
- 締切済み
- ホームページ作成ソフト
- Accessデータベース
Accessで過去の天気をデータベース化したのですが、 年、月、日付などを選択して検索できるよう何かできないでしょうか? データベースの内容としては 日付、9時、12時、15時、最高気温、最低気温の6項目です。 9時、12時、15時の情報としてはその時間帯の天気情報が書かれています。(例.晴れ、くもり、雨、雪、雷)
- ベストアンサー
- オフィス系ソフト
- どうやってデータベースサーバをイントラネットにおくのでしょうか
postgreSQLとPHPで出来る事をウェブページで色々とやってみたいのですが、データベースをレンタルサーバ上に置くのは怖いのでやりたくないのです。この場合はどうすれば良いのでしょうか。イントラネット上でウェブサーバというかデータベースサーバを用意しないといけないのでしょうか? また、レンタルサーバ上にデータベース情報を置くのはセキュリティ上危険だと思うのですが、実際はそうでもないのでしょうか? 大手のウェブサイトでは通常このような時、どのような環境で制作しているのでしょうか?
- 締切済み
- その他(データベース)