- ベストアンサー
実世界とテーブルの関係について
今、データベースシステムについて勉強しているものです。今回はある参考書に掲載されていた問題でわからないものがあったので質問しました。その問題なのですが二問ありまして・・・ 実世界とテーブルの関係について、以下の問いに答えよ。 1.1 実世界とテーブルの対応関係について説明せよ。 1.2 主キーと外来キーについてのインテグリティ制約が何故必要か説明せよ。 という問題です。この実世界とテーブルとの関係に興味を持ったのですが、まだ勉強し始めということもあり正しい解答がわからないでいます。 わかる方、解答とその解答の解説をしてくださるとうれしいです。お願いいたします!
- ohako
- お礼率100% (11/11)
- その他(データベース)
- 回答数1
- ありがとう数3
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
P.70
関連するQ&A
- 親子関係のテーブルについて
現在SQLServerを使用した、Webアプリケーションの製作を行なっています。 そのデータベース内で、親子関係があるテーブルを使用しており、親テーブルの主キーIDを、子テーブルの外部キーに設定しています。 親テーブルの主キーIDはidentityを使用して連番にしています。 親子関係があるテーブルは、親が登録されると、すぐに子のテーブルにもデータを追加するという形で、親テーブルが追加された直後に親テーブルの主キーIDをMAX関数を使用して取得し、子テーブルに登録しております。 このやり方ですと、通常は問題は無いのですが、同時に連続してアクセスがある時に、親テーブルの主キーIDを取得する際に、ずれが生じたりして正確な親子関係にならない場合があります。 この手法は一般的な手法ではないのでしょうか?また、何かいい対処法はございませんでしょうか? お力をお貸しください。よろしくお願いします。
- ベストアンサー
- SQL Server
- 外部キーだけのテーブル(主キーがない?)
データベースのテーブルについておたずねします. 主キーがなくて,そのかわりに外部キー(と主キー以外の列)しか持たない テーブルも可能だと聞きました. テーブルには主キーが必ずあるものだと思っていましたが, どのような使いかたをするのでしょうか. どうやら,最初からデータがあるわけではなく, 追加されるタイミングがわからないデータを格納する場合に作っておく, ということらしいのですが,なんのことかよくわかりません. データベース関連書籍をいくつか調べましたが, 主キーのないテーブルの説明などは見当たりません. また,この悩ましい問題を与えてくれた知り合いに訊ねましたが, テーブル構成などの具体的なことは, 企業内のことなので,教えてもらえませんでした. 何か具体的な例を交えながらご説明いただければと思います.
- ベストアンサー
- その他(データベース)
- 関係データベースについて(ITパスポート)
ITパスポートの勉強をしているのですが、その中で関係データベースについて参考書やネットで検索をしてもまったく理解ができません。 下記の2点の問題についてですが、回答の解説を読んでも理解が全くできず、なぜこの答えが正しいのかがわかりません。 できるかぎり詳しく解説をして頂ければと存じます。 (1) 問)関係データベースにおいて主キーを指定する目的はどれか? 答)主キーに指定した属性(列)で、レコード(行)を一意に識別できるようにする (2) 問)関係データベースを利用する際に、データの正規化を行う目的として、適切なものはどれか? 答)データが重複したり、データの更新の際に矛盾が生じたりしないようにする。
- 締切済み
- その他(データベース)
- テーブル設計で迷っています
今、初級シスアドの試験の過去問をデータベースかする為、テーブル設計をしていますが、どうしてもうまく一元化できません。 システムの概要 ・ユーザにアカウントとパスワードを作ってもらいログインしてもらう ・作成時に同じアカウントがある場合は別のアカウントにするよう指示を出す ・ログイン終了後、過去問(19年秋~16年春まで)を選ぶか、分野 ごとに分けた分野の問題20問1セット(データベースならデータベースだけの問題 など)を選ぶか選択してもらう。 ・試験を開始して終了後、成績を分野別と総合で表示。間違って解答した箇所は解答と解説を表示 大まかなシステムの概要でしてテーブルは今こんな状況の設計です。 ・アカウント アカウント番号 アカウント名 パスワード 氏名 ・成績 アカウント番号 日付 分野コード 配点 ・試験範囲 試験コード 試験名 例 0001 19年春午前 ・分野範囲 分野コード 分野名 例 0002 データベース ・問題 試験コード 分野コード 問番号 選択肢(ア~エ) 解答 配点 ・解説 試験コード 問番号 解説 一番問題なのは、成績・試験問題・解説・解答を管理するに当たって どの試験のどの問題なのかを特定するのに試験コード・分野コードが 重複しすぎてるところが一番悩んでいます。 テーブルの設計に詳しい方教えていただけませんか?どうしてもこのシステムを完成させてシスアド受ける自分の為にも、これから受ける人の 為にも実装させたいです
- 締切済み
- MySQL
- テーブルの作成時にふと疑問が
いつもお世話になっております。 今データベースを勉強しようとおもい いろいろ本を読んで勉強しているのですが どうしてもわからないことがあります。 テーブルの作成時にindexやkeyの指定の仕方は 掲載されているのですが、どんなレコードに付けるのか? また、指定した結果どのような恩恵を受けるのかが いまいちわかりません。 postgresqlの本を2冊ほど読み PHPからデータを出し入れしてるレベルですが インターネットで検索しても、検索の仕方が悪いのか 指定方法は出てくるのですが、どうして指定するのか間では見つけられません。 もしかして、データベースをやる方ならば当たり前に知っていることなのか? というような、超初心者な質問で申し訳ありませんが、 どなたか、ご教授お願いいたします。 もやもやして、わからないことがあると勉強もなかなか先に進めません。 よろしくお願いいたします。
- ベストアンサー
- その他(データベース)
- 別テーブルの抽出方法について
初心者質問で恐縮なのですが、 テーブルAを正規化してテーブルBを作成したとします。 さらにテーブルBを正規化し、テーブルCを作成します。 そこで、そのテーブルA、B、Cからあるレコード1つ抽出するにはどのようなSQL文を書けば抽出できますでしょうか。 また、テーブルに外部キー制約などを用いてリレーショナル関係を築いた場合、そのメリットは更新、削除等で他のレコードと間違えないことであるということの他になにかありますでしょうか? ご存知の方、宜しくお願いします。
- 締切済み
- MySQL
- 世界史資料集「図説エスカリエ」のクイズの解答
「明解世界史図説 エスカリエ」(帝国書院)という世界史の資料集を使用しています。中にクイズや選択問題が掲載されているのですが、解答一覧の掲載されているWebサイト等があれば教えて下さい。
- 締切済み
- 歴史
- データベースとテーブルを作成する基準について
独学でMySQLを勉強しているのですが、さまざまな種類のデータが大量にある場合、どのような基準でデータベースやテーブルを分けるのでしょうか? 例えばOKWaveの場合、ユーザーデータを入れるDBとQ&AをいれるDBをわけるのか、それともひとつのDBに別のテーブルとしていれるのか。 掲示板の場合、一つのスレッドでテーブルを一つ作るのか、それとも全てのスレッドを一つのテーブルにいれインデックスをつけて使うのか。 これらのことが使いやすさや拡張性の問題であるのか、速度などに関係するのかわかりません。 データの種類や構成で一概に言えることではないかもしれませんが何か基準を知りたいのでよろしくお願いします。
- ベストアンサー
- MySQL
- データベーススペシャリスト試験(正規化)
データベーススペシャリスト試験、H22春期[午後1][問1]のデータベースの基礎理論に関して質問させてください。 正規化について、設問2で下記のような問題が出題されています。 過去問題集などで問題の解答解説を読んだところ、疑問がでました。 ■問題(1)■ 関係"出題"を第3正規形に分解したスキーマで示せ。 出題(大問ID,中問番号,中問ID,小問番号,小問ID,大問作成日時,中問作成日時,コースID,制限時間) ※但し、下記の関数従属性は与えられている。 {大門ID}→{大問作成日時} {大門ID,中問番号}→{中問ID} {中問ID}→{中問作成日時,コースID,制限時間} {中問ID,小問番号}→{小問ID} ■解答(1)■ 中問(中問ID,中問作成日時,コースID,制限時間) 中問小問(中問ID,小問番号,小問ID) 大問中問(大問ID,中問番号,中問ID) 出題(大問ID,大問作成日時) ■疑問(1)■ 上記4スキーマに加え、元々の関係"出題"の主キーと考えられる下記1スキーマが残されるべきと思ったのですが、なぜ下記のスキーマは必要ないのでしょうか。 構成(大問ID,中問番号,小問番号) 続く問題(2)でも同様の疑問を感じました。 ■問題(2)■ 関係"答案"を、第3正規形に分解した関係スキーマで示せ。 答案(受講者ID,大問ID,小問ID,解答日時,解答時間,解答回数,評点,解答,得点) ※但し、下記の関数従属性は与えられている。 {受講者ID,大問ID}→{解答回数} {受講者ID,大問ID,解答日時}→{解答時間,評点} {受講者ID,小問ID,解答日時}→{解答,得点} ■解答(2)■ 回数{受講者ID,大問ID,解答回数} 採点{受講者ID,大問ID,解答日時,解答時間,評点} 解答{受講者ID,小問ID,解答日時,解答,得点} ■疑問(2)■ 上記3スキーマに加え、元々の関係"答案"の主キーと考えられる下記1スキーマが残されるべきと思ったのですが、なぜ下記のスキーマは必要ないのでしょうか。 解答日時(受講者ID,大問ID,小問ID,解答日時) 基本的な内容とは思うのですが、考えても調べても上記疑問が解消されず、アドバイス頂きたいと思います。 よろしくお願い致します。
- ベストアンサー
- その他(データベース)
お礼
解答ありがとうございました。