#内容
SQLARCHEMYを使ったデータベースを検討しています。
データベースにはテーブルが3つあります。
いま仕入れマスタの中にnumber(多)というフィールドがあります。
これに対して、品種マスタ(1対1)とラベルマスタ(1対1)があります。
どちらもnumberを外部キーで参照します。
table
1仕入れマスタ 2id 3number(fk) 4date 5person 6 7品種マスタ 8number(pk) 9name 10cost 11 12ラベルマスタ 13number(pk) 14value 15date 16
#質問事項
これをSQLARCHEMYでモデル化する際ですが、number(fk)というのは、同時に2つのテーブルに対して
外部キーとして関連を付けることは可能なのでしょうか?
イメージ的には外部キーは一つのテーブルにしか割り当てられないと思っていて
その際は下記のように外部キーを2つもたせないといけないのかと思っています。
table
1仕入れマスタ 2id 3number1(fk) →品種マスタ 4number2(fk) →ラベルマスタ 5date 6person 7
もしくは下記のように、仕入れマスタ →品種マスタ→ラベルマスタ のように
直列にしなければいけないのでしょうか?
table
1仕入れマスタ 2id 3number(fk) →品種マスタ 4date 5person 6 7品種マスタ 8number(pk) 9number-a(pk) →ラベルマスタ 10name 11cost 12 13ラベルマスタ 14number-a(pk) 15value 16date 17
どうもORMを使う前提の場合に、一つの外部キーに
複数テーブルを参照したい場合のやり方が良く分かりません。
いっそのこと、品種マスタとラベルマスタをくっつけてしまうのも
ありかもしれませんが、データベースが分離しているので
なんとか2つを関連付けたいです。
テーブル定義の列名とデータ型や桁数を明確にするために、CREATE TABLE文に変更しては?データも何件かずつ INSERT文で提示できた方が良いかと。
回答1件
あなたの回答
tips
プレビュー