• ベストアンサー

MySQLで複数のテーブルを相互に連携させてやれることを教えてください。

PHPとMySQLを勉強しています。 以下のサイトで「たいていは、複数のテーブルを作り、それらを相互に連携(リレーション)させて、1つのデータベースを構築します。」と書いてありますが、具体的にどのような感じなのか教えてください。 http://y-kit.jp/saba/xp/mysqltry2.htm 個人的には、例えば郵便番号を検索できるサイトを制作するなら、ひとつのテーブルにまとめた方が扱いやすいのではないかと思うのですが……。それとも、もっと複雑なデータを扱う場合に、複数のテーブルで管理するのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • koke29
  • ベストアンサー率58% (114/196)
回答No.1

「正規化 データベース」というキーワードで色々調べてみると ケースによってどういう設計をするか何となくわかるかもしれません 同じようなデータを取るにしても、後からどういう風に使うかによって テーブルの構造は変わってくるので、これが正解っていう設計は無いです 自分が扱うデータを管理しやすくするために、どういう持ち方をすれば 効率がいいかとかを考えるんですよー 郵便番号検索のサイトについても、そのデータに拡張性を持たせるとか 何か色々な要素によって考え方が変わると思うので何ともいえないです 郵便番号と地名のデータだけが必要ならデータベース自体いらないかな とも思いますし(連想配列で対応するとか)

参考URL:
http://www.mirai.ne.jp/~suehiro/am/kihonyougo/normal.htm
aiueo667
質問者

お礼

アドバイスありがとうございます。 確かに単純な構造なら連想配列で対応できますよね……。 正規化 データベースで少し調べてみたいと思います。

関連するQ&A