みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
yotubeに上がっているオンライン学習動画を見て勉強中です。
何度見ても理解ができない内容があったため質問させてください。
リレーションシップのつなぎ方の内容です
テーブルを2つ作った際のそのテーブル同士をつなげる場合は、必ず外部キーを用意しないといけないでしょうか?
1対1のなる関係の場合は外部キーはいらないと思っていました。
mainテーブルのzipcloudで取得した住所情報をsubテーブルの都道府県、市区、町村フィールドに分けて保存したいのですがどうやればいいのかわかりません。
ご回答よろしくお願い致します。
Offline
郵便番号をキーにすればいいですよ。
> 1対1
両テーブルで郵便番号がユニークな、
完全な1対1の関係なら、テーブル一つにすべきでしょう。
Offline
1対1だとしても「つなげる」キーが必要ですから、片方で主キーにした値をもう片方に入れれば「外部キー」ということになるのでは。
テーブルを分ける意味がわかりませんけど、郵便番号のデータだとしたら郵便番号はユニークじゃない(主キーではない)ような気がしますが?
その場合「外部キー」とはいいません。
>mainテーブルのzipcloudで取得した住所情報をsubテーブルの都道府県、市区、町村フィールドに分けて保存したい
住所フィールド:東京都新宿区西新宿2丁目8
↓
都道府県フィールド:東京都
市区フィールド:新宿区
町村フィールド:西新宿2丁目8
こういう感じに分けたいということでしょうか?
もし、これならリレーションする必要は無いです。
チポさん、himadaneeさん、素人さんご回答ありがとうございます。皆さんの回答を参考に何とか目的の動作を実現できました。
>両テーブルで郵便番号がユニークな、完全な1対1の関係なら、テーブル一つにすべきでしょう。
本来であればテーブルを分けずにやるのがベストだと思うのですが、テーブル間のデータやり取りを実装するために勉強もかねてこの方式でチャンレジしました。
色々調べたら何とかできましたが、正しいやり方ではないと思っていますのでこんな方法もあるんだと理解しておきます。
>郵便番号のデータだとしたら郵便番号はユニークじゃない(主キーではない)ような気がしますが?その場合「外部キー」とはいいません。
テーブル間で連携させるために外部キーを用意してつなげてみましたが、よくよく考えてみると外部キーとしての使い方ではない気がします。
>都道府県フィールド:東京都
>市区フィールド:新宿区
>町村フィールド:西新宿2丁目8
>こういう感じに分けたいということでしょうか?
mainテーブルで取得した情報をsubテーブルのフィールドに表示させることが目的でした。
jsonから取得した値のリザルトから都道府県・市区・町村と分けることはできましたが、その情報をsubテーブルに渡してやることができなかった質問致しました。
Offline
Pages: 1
[ Generated in 0.005 seconds, 9 queries executed - Memory usage: 519.16 KiB (Peak: 527.35 KiB) ]