[Seasar-user:20376] Re: DBFluteのadditionalForeignKeyについて

kubo [E-MAIL ADDRESS DELETED]
2010年 12月 4日 (土) 02:41:34 JST


久保(jflute)です。

> て関連付くのですが、MST_CLASSからMEMBERへの逆リレーションまで生成してい
> る模様です。このためMST_CLASSからMEMBERのリレーションコードが二重に出力
> され、エラーの原因になっていると思われます。

また、リレーションコードは、具体的には、
どのクラスのどのメソッドでしょうか?
(例えば、Entity の getXxxList() メソッドなど)

そして、業務的one-to-oneが一つだけの場合は
コンパイルエラーにはならないのでしょうか?

2010/12/4 kubo <[E-MAIL ADDRESS DELETED]>:
> 久保(jflute)です。
>
> 桑田さん、こんばんは
>
> 取り急ぎですが、確認させて下さい。
> この現象は、
> DBFlute.NET-0.8.9.21 にアップグレードした発生したのか?
> それとも DBFlute.NET-0.8.9.21 で初めてこの設定をして
> 発生したのか、どちらになりますでしょうか?
>
> 2010/12/4 N.Kuwako <[E-MAIL ADDRESS DELETED]>:
>> お世話になっております。
>> 桑田と申します。
>>
>> 現在、DBFluteを使用して、開発を行っております。
>> DBFlute.NET-0.8.9.21において、additionalForeignKeyのfixedCondition
>> を利用して業務的one-to-oneを実現しております。
>> 下記のような設定をadditionalForeignKeyに記述してjdbc.bat、generate.batを
>> 実行してビルドを行った結果、エラーとなってしまいます。
>>
>> map:{
>>    ; FK_MEMBER_FOO_MST_CLASS = map:{
>>        ; localTableName = MEMBER
>>        ; foreignTableName = MST_CLASS
>>        ; localColumnName = FOO_CODE ; foreignColumnName = CLASS_CODE
>>        ; fixedCondition = $$foreignAlias$$.GROUP_CODE = 'foo'
>>        ; fixedSuffix = AsFoo
>>
>>    }
>> }
>>
>> map:{
>>    ; FK_MEMBER_HOGE_MST_CLASS = map:{
>>        ; localTableName = MEMBER
>>        ; foreignTableName = MST_CLASS
>>        ; localColumnName = HOGE_CODE ; foreignColumnName = CLASS_CODE
>>        ; fixedCondition = $$foreignAlias$$.GROUP_CODE = 'hogehoge'
>>        ; fixedSuffix = AsHogehoge
>>
>>    }
>> }
>>
>> 調べた結果、MEMBERからMST_CLASSへのリレーションはfixedSuffixを元に分離し
>> て関連付くのですが、MST_CLASSからMEMBERへの逆リレーションまで生成してい
>> る模様です。このためMST_CLASSからMEMBERのリレーションコードが二重に出力
>> され、エラーの原因になっていると思われます。
>> fixedConditionを利用した場合は業務的one-to-oneとなり、逆リレーションコー
>> ドが出力されないと認識していたのですが、何か間違っているのでしょうか
>>
>> 大変申し訳ございませんが、ご教示いただければ幸いです。
>>
>>
>> _______________________________________________
>> Seasar-user mailing list
>> [E-MAIL ADDRESS DELETED]
>> https://ml.seasar.org/mailman/listinfo/seasar-user
>>
>


Seasar-user メーリングリストの案内