• ベストアンサー

リレーションの表示方法

amountainblastの回答

  • ベストアンサー
回答No.3

こんにちは。 MySQL4.1を触ったことがないので、勘違いをしているかもしれませんが、 アクセスみたいにリレーションを視覚的に組めるんですか? 確か3系とかではそんなことはできなかったので、SQL文の生成の段階でリレーションを組んでいましたが!!! テーブル構造として作ったってことかな??? リレーションが組めているのであれば、そのリレーションを使ったSQL文を作ってデータを確認してみたら、関連付けができているかどうか、確認できます。

jpgif
質問者

補足

回答ありがとうございます。 4でも視覚的にはできないです。 テーブルを複数作って後から alter table文でリレーションを組んだつもりです。 しかし、しっかりとリレーションが組めているかを 知る情報はあるのかなと思い質問さしていただきました。

関連するQ&A

  • phpMyAdminの「リレーションを表示する」について

    テーブル間のリレーションについて質問です。 phpMyAdminを使ってMySQLのデータベースにテーブルを作成しています。 今、顧客のテーブル「Customer」と業務のテーブル「Order」があったとして、 ----------------------------------------------------- 【Customer】 [CustomerNo] int型 主キー設定 [CustomerName] varchar_20 [PostName] varchar_20 [Address] varchar_30 [TelNumber] varchar_20 【Order】 [CustomerNo] int型 主キー設定 [OrderName] varchar_10 ---------------------------------------------------- としています。 ここでCustomerテーブルのCustomerNoとOrderテーブルのCustomerNoで リレーションを組もうと思いました。そこでOrderテーブルでリレーションを表示するを選択し、 CustomerNoのフィールドで「Customer -> CustomerNo」を選択し保存するを押したのですが、 「インデックスは設定されていません。 (CustomerNo)」というエラーが帰ってきました。 これはどうすればリレーションを組むことができるのでしょうか? ググッて調べてみたのですが、それっぽい情報が無かったものでして質問をさせていただきました。 どなたか宜しくお願い致します。

  • mysqlでリレーション

    こんにちは。 OSはRedhatLinux7.1 Apache_1.3.26 php-4.2.3 mysql-3.23.52 を使っています。 基本的なことなのですが、データベースでのリレーションの持たせ方がよくわかりません。 今まではリレーションを持たせずに頑張っていたのですが、データの管理が大変になってきました。 mysqlでコマンドを使ってテーブルとテーブルの間に関係を持たせ、データを管理しやすくするにはどのようにしたらいいのでしょうか? 勉強不足ですが大変申し訳ないのですが、アドバイスお願いします。

  • Sqliteのリレーション

    ■利用環境 Sqlite3.3.5 データベース初心者で、 リレーションの概念等、理解出来てない 質問になってましたらすみません。 現在、テーブルを作成する事くらしかできません。 ■質問 Sqliteのテーブルプログラムから、 SQL関数を使ってつくっているのですが、 リレーションの設定の仕方がわかりません。 ■説明 Aと言うテーブルとBと言うテーブルがあるとき useridを主キーとして、お互いにリレーション を作るには、どのようにSQLを書けばよいですか?

  • リレーションテーブルって何でしょうか?

    リレーションテーブルって何でしょうか? テーブルAとテーブルBの値が入っているXというテーブルがあり、 それはどうやらリレーションテーブルとかいうものらしいのですが、 ビューとの違いがよくわかりません。 詳しく教えていただけないでしょうか?

  • 3つのテーブルのリレーション

    access2000です。 2つのテーブルをクエリのリレーションで繋がてフォームを作成しました。 この場合、新規レコード追加はできます。 ところが3つのテーブルをつなげてそれを元にフォームを作成しましたが 新規レコードを追加できません。 できないのでしょうか? または何かミスをしているのでしょうか? 実物はアップできないのでミスとしたらどのような可能性がありますでしょうか? お願い致します。

  • MySQL テーブルのリレーションシップ

    初心者です。MySQL4.1です MySQLでテーブルを複数作成したのですが リレーションを組むのを忘れてまして 後からリレーションを組みたいのです。 alter tableをどう使えばいいんですか?

  • access2000で テーブルに+表示:リレーションしたとき

    アクセスで大きなデータテーブルをいくつかの子テーブルに分解し,各テーブルを共通のID(オートナンバのインデックスキー)により、1:1のリレーション付け(Aテーブル~Bテーブル~Cテーブル)を行ってから、 テーブルを開いてみました。ところがBやCテーブルを開くとそのテーブル内の一番左側に新しいフィールドのようなものができかつ,そのセルに+記号が表示されクリックするとリレーションついたAテーブルの対応するレコードの内容が表示されるのですが、これは処理として正常なのか、どこか私が間違ったことをしているのか,お教え願います。 この+記号について知りたいのですが、ヘルプに説明が入っているのでしょうか。

  • リレーション?参照整合性の謎?

    Ac2000です。 「T_メンバー一覧」(テーブル) ・ID ・名前 ・所属 「T_マスタ」(テーブル) ・ID ・名前 ・所属 ・備考 とします。 それぞれからフォームを作成し、「F_マスタ」のフォーム上で IDはコンボボックスとし、ここでIDを指定すれば 名前と所属が入るようになっています。 「T_メンバー一覧」に変更があった場合(所属が変わるなど)に、 「T_マスタ」も自動で変更されるようにしたいのです。 T_マスタにデータが入っている場合です。(1件のみ) リレーションをはり、ID同士で設定しました。 「参照整合性」にチェックをし作成しようとすると、 「T_マスタ」テーブルのデータが参照整合性の規則に違反しています。 たとえば、ある社員に関連するレコードがリレーションテーブルにあるときに、 この社員に関連するレコードが主テーブルにありません。 ・・・・ となってしまうのです。 T_マスタにデータが入っておらず、上のリレーションが成功したあとに、 入力をしようと、F_マスタを開き、IDを選択して、 フォームを閉じようとすると、 「テーブル 'T_メンバー一覧'にリレーションシップが設定されたレコードが必要なので、 レコードの追加や変更は行うことはできません。 となります。 この2点を解決する回避策を教えてください。

  • 学生 科目 課題のリレーション

    テーブルの設計をしています。 現在はACCESS2003で設計しており、ゆくゆくはSQLSERVER2005にしたいと考えています。 今現在あるテーブルは学生・科目履修・科目です。 順に1対多、多対1でリレーションを作成しています。 これに課題テーブルを作成したいのですが、どのようにリレーションすればいいか、分りません。以下課題の条件です。 ・課題には課題コードがあります。 ・1科目には必ず複数個の課題があります。 ・科目により課題の個数は違います。 ・学生1人1人に課題の点数を入力する必要があります。 私なりに1週間ほど考えたのですが、結局は科目履修とは別に、学生・実習・課題のようにテーブルを定義して1対多、多対1のリレーションしかないのでしょうか? しかしあまりにひどいリレーションになってしまいます。入力も時間がかかります。もっときれいに理論的に整理されたリレーションが作れないでしょうか? お手数でしょうが、ご教授ください。

  • phpmyadminのリレーション

    SELECT * FROM table1,table2 WHERE table1.id=table2.data_id; phpmyadminにて、上記のようなSQL文を実行してtable1とtable2のデータを リレーションにより表示します。 この時に表示した内容のテーブルを新規作成するにはどうすれば良いでしょうか?

    • ベストアンサー
    • MySQL