• 締切済み

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)」というエラーが帰ってきました。 これはどうすればリレーションを組むことができるのでしょうか? ググッて調べてみたのですが、それっぽい情報が無かったものでして質問をさせていただきました。 どなたか宜しくお願い致します。

みんなの回答

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

リレーション用のDBはきちんとつくってありますか? 通常ですと「phpmyadmin」DBの中に pma_bookmark,pma_column_info,pma_history,pma_pdf_pages, pma_relation,pma_table_coords,pma_table_info などのテーブルを作成して管理するものですが。

aburaburo
質問者

お礼

回答ありがとうございます。 どうも調べ方が悪かったようです。 御指摘の通り自分でphpmyadminという名前のデータベースを作成して管理する必要があるようですね。 大変助かりました。これから試してみます。 ありがとうございました。

関連するQ&A