#68 同じ列を異なる外部キーで定義したい

closed
None
5
2011-08-05
2010-10-21
Anonymous
No

大変便利なツールで、半年以上使い続けています。

1つ要望があります。同じ列を異なる外部キーで定義したいのですが、作図できませんでした。
具体的には、以下に示す d_tbl のケースです。

create table a_tbl
(
col1 number primary key
)
/

create table b_tbl
(
col1 number
,col2 number
,primary key (col1, col2)
,foreign key (col1) references a_tbl(col1)
)
/

create table c_tbl
(
col1 number
,col3 number
,primary key (col1, col3)
,foreign key (col1) references a_tbl(col1)
)
/

create table d_tbl
(
col1 number
,col2 number
,col3 number
,primary key (col1, col2 , col3)
,foreign key (col1, col2) references b_tbl(col1, col2) --★
,foreign key (col1, col3) references c_tbl(col1, col3) --★
)
/

ERMasterのバージョンは、ERMaster 1.0.0.v20100307-2244 を使っています。
(最新版は私の環境ではうまく動かなかったので、試す事ができませんでした。)
DBはOracleです。

また、次の方法も試しましたが、駄目でした。
 ・Import機能で取り込んでみ
 ・既存の列を使った関連

検討いただければと思います。

Discussion

  • すみません。
    文章まちがえました。
     ×「 ・Import機能で取り込んでみ」
     ○「 ・Import機能で取り込み」
    大変失礼しました。

     
  • 対応いたしました。

    tbl_a, tbl_b, tbl_c を作った状態で
    tbl_d を空で作り、tbl_b から [1:N 関連] を使うと tbl_d に col1, col2 が追加されます。
    次に、tbl_d に col_3 を作ってから、[既存の列を使った関連] を使って、
    col_1, col3 を指定します。
    これで、上記のものが作れます。

    また、インポートからも正常に作れるように対応しました。

     
    • assigned_to: nobody --> h_nakajima
    • status: open --> closed