[seasar-dotnet:1095] Re: DBFlute による親データの取得について

kubo [E-MAIL ADDRESS DELETED]
2008年 10月 24日 (金) 14:03:27 JST


久保(jflute)です。

おお、よかったです。
こちらこそ今後もよろしくお願いします。

2008/10/24 Nakai <[E-MAIL ADDRESS DELETED]>:
> 久保さん
>
> お察しのとおりです!!
> (曖昧な質問ですいません。。。)
>
> additionalForeignKeyMap.dfprop
> を早速使わせていただきます。
>
> 今後もよろしくお願いいたします。
>
>> ------------------------------
>>
>> Message: 2
>> Date: Thu, 23 Oct 2008 22:31:37 +0900
>> From: kubo <[E-MAIL ADDRESS DELETED]>
>> Subject: [seasar-dotnet:1086] Re: DBFlute による親データの取得について
>> To: [E-MAIL ADDRESS DELETED]
>> Message-ID:
>>       <[E-MAIL ADDRESS DELETED]>
>> Content-Type: text/plain; charset=UTF-8
>>
>> 久保(jflute)です。
>>
>> >> ちなみに「コード:名称値」を持ったテーブルからN:1マッピングをする際にも
>> >> 外部キーを付けるしか方法はないのでしょうか?
>> >> (今日それで格闘してました・・・)
>>
>> さっき日比谷線のホームで「あれはどういうことだったのかなぁ」
>> と考えててふと思ったのですが、
>> 「実際のFK制約がなくてもSetupSelectで取得したい」
>> ということでしょうか?
>> それで、実際のFK制約がない関連でExEntityに手動でRELKEYを
>> 付与して試していた、という話につながりますでしょうか?
>>
>> もし、そうであれば、additionalForeignKeyMap.dfpropにて
>> DBFluteで疑似のFK情報を定義することで可能です。
>> http://d.hatena.ne.jp/jflute/20080709/1215624049
>>
>>
>> #
>> # はずしてたらすごい恥ずかしい....
>> #
>>
>> 2008/10/23 kubo <[E-MAIL ADDRESS DELETED]>:
>> > 久保(jflute)です。
>> >
>> >> すいません。自己解決しました。
>> >>
>> >> 落ちる方はExEntityに「Relno,Relkeys」属性のついたプロパティがあり、
>> >> 削除したら正常に動きました。
>> >
>> > おお、了解です。
>> > ちょっとドキドキしてました。
>> >
>> >> (N:1マッピングをやろうと追加したのですが、DBFluteでは未サポートという
>> >> Exceptionが出たため中止したものの、プロパティは消してませんでした)
>> >
>> > N:1ではなく、1:Nってことでしょうか?
>> > (つまりone-to-many)
>> > もし、その場合はDBFluteはBehaviorのLoadReferrerを使ってN側を取得します。
>> >
>> >> ちなみに「コード:名称値」を持ったテーブルからN:1マッピングをする際にも
>> >> 外部キーを付けるしか方法はないのでしょうか?
>> >> (今日それで格闘してました・・・)
>> >
>> > すいません、これちょっとよくわかりませんでした。
>> > 「コード:名称値」を持ったテーブルとは、
>> > 例えば、ExampleDB
>> > http://dbflute.sandbox.seasar.org/view/exampledb/EARoot/EA1.html
>> > の会員ステータスのようなテーブルのことでしょうか?
>> > (そのテーブルからN:1マッピングをする、とは!?!?)
>> >
>> > 2008/10/23 Nakai <[E-MAIL ADDRESS DELETED]>:
>> >> 久保さん
>> >>
>> >> すいません。自己解決しました。
>> >>
>> >> 落ちる方はExEntityに「Relno,Relkeys」属性のついたプロパティがあり、
>> >> 削除したら正常に動きました。
>> >>
>> >> (N:1マッピングをやろうと追加したのですが、DBFluteでは未サポートという
>> >> Exceptionが出たため中止したものの、プロパティは消してませんでした)
>> >>
>> >> お騒がせして申し訳ありませんでした。
>> >>
>> >> ちなみに「コード:名称値」を持ったテーブルからN:1マッピングをする際にも
>> >> 外部キーを付けるしか方法はないのでしょうか?
>> >> (今日それで格闘してました・・・)
>> >>
>> >>
>> >> Nakai <[E-MAIL ADDRESS DELETED]> wrote:
>> >>
>> >>> 久保さん
>> >>>
>> >>> 成功している方はAの上にはいません。
>> >>> 失敗する方はさらに親がいるケースといないケース両方あります。
>> >>> 規則性がまだ見えていない状況です。
>> >>> 引き続き調べてみます。
>> >>>
>> >>> ※Logに出ているSQLは「A」も「B」も正常に流れます。
>> >>>
>> >>>
>> >>>
>> >>> kubo <[E-MAIL ADDRESS DELETED]> wrote:
>> >>>
>> >>> > 久保です。
>> >>> >
>> >>> 中井さん、こんばんは
>> >>> >
>> >>> AとA1の関係と、BとB1の関係に何か特徴的な違いはありますでしょうか?
>> >>> > 例えば、「A」にはさらに親がいて、「B」には親がいないとか。
>> >>> >
>> >>> 2008/10/23 Nakai <[E-MAIL ADDRESS DELETED]>:
>> >>> > > いつもお世話になります。
>> >>> > > 中井と申します。
>> >>> > >
>> >>> > > 現在、cb.SetupSelectで親テーブルのデータ取得を試みているのですが、
>> >>> > > 成功する親子テーブルと失敗する親子テーブルがあり悩んでいます。
>> >>> > >
>> >>> > > 例)Aテーブル(親)〓A1テーブル(子)
>> >>> > >        Bテーブル(親)〓B1テーブル(子)
>> >>> > >
>> >>> > > ↓成功
>> >>> > > A1tableCB cb = new A1tableCB();
>> >>> > > cb.SetupSelect_Atable();
>> >>> > > bhv.SelectList(cb);
>> >>> > > ↓失敗
>> >>> > > B1tableCB cb2 = new B1tableCB();
>> >>> > > cb2.SetupSelect_Btable();
>> >>> > > bhv2.SelectList(cb2);
>> >>> > >
>> >>> > > 共にデータは存在しています。
>> >>> > > 何かおかしいところはあるでしょうか?
>> >>> > > お忙しいところ申し訳ありませんが、
>> >>> > > よろしくお願いいたします。
>> >>> > >
>> >>> > > DBFlute:0.8.2
>> >>> > > DB:SQLServer2005
>> >>> > >
>> >>> > > 以下Exceptionです。
>> >>> > > -----------------------------------
>> >>> > >
>> >>> > > <System.NullReferenceException>
>> >>> > >
>> >>> > > 【Source】:Seasar.Dao
>> >>> > >
>> >>> > > 【Stacktrace】:場所 Seasar.Dao.Impl.RelationRowCreatorImpl.BuildRelationNoSuffix(IRelationPropertyType rpt)
>> >>> > >  場所 Seasar.Dao.Impl.RelationRowCreatorImpl.SetupNextPropertyCacheElement(RelationRowCreationResource res, IRelationPropertyType nextNextRpt)
>> >>> > >   場所 Seasar.Dao.Impl.RelationRowCreatorImpl.SetupNextPropertyCache(RelationRowCreationResource res, IBeanMetaData nextBmd)
>> >>> > >   場所 XXX.AllCommon.S2Dao.InternalRelationRowCreator.SetupPropertyCache(RelationRowCreationResource res)
>> >>> > > 場所 XXX\\AllCommon\\S2Dao\\S2DaoMetaDataFactoryImpl.cs:行 569
>> >>> > >   場所 Seasar.Dao.Impl.RelationRowCreatorImpl.CreateRelationPropertyCache(IList columnNames, IBeanMetaData bmd)
>> >>> > >   場所 XXX.AllCommon.S2Dao.Internal.RsHandler.InternalAbstractBeanMetaDataResultSetHandler.CreateRelationPropertyCache(IList columnNames)
>> >>> > > 場所 XXX\\AllCommon\\S2Dao\\Internal\\RsHandler\\InternalAbstractBeanMetaDataResultSetHandler.cs:行 50
>> >>> > >   場所 XXX.AllCommon.S2Dao.Internal.RsHandler.InternalBeanListMetaDataResultSetHandler.Handle(IDataReader dataReader, IList list)
>> >>> > >  場所 XXX\\AllCommon\\S2Dao\\Internal\\RsHandler\\InternalBeanListMetaDataResultSetHandler.cs:行 72
>> >>> > >   場所 XXX.AllCommon.S2Dao.Internal.RsHandler.InternalBeanGenericListMetaDataResultSetHandler.Handle(IDataReader dataReader)
>> >>> > > 場所 XXX\\AllCommon\\S2Dao\\Internal\\RsHandler\\InternalBeanGenericListMetaDataResultSetHandler.cs:行 27
>> >>> > >   場所 XXX.AllCommon.S2Dao.Internal.SqlHandler.InternalBasicSelectHandler.Execute(IDbCommand cmd, Object[] args)
>> >>> > >  場所 XXX\\AllCommon\\S2Dao\\Internal\\SqlHandler\\InternalBasicSelectHandler.cs:行 78"
>> >>> > >
>> >>> > > 【TargetSite】:System.String BuildRelationNoSuffix(Seasar.Dao.IRelationPropertyType)
>> >>> > > _______________________________________________
>> >>> > > seasar-dotnet mailing list
>> >>> > > [E-MAIL ADDRESS DELETED]
>> >>> > > https://ml.seasar.org/mailman/listinfo/seasar-dotnet
>> >>> > >
>> >>> > _______________________________________________
>> >>> > seasar-dotnet mailing list
>> >>> > [E-MAIL ADDRESS DELETED]
>> >>> > https://ml.seasar.org/mailman/listinfo/seasar-dotnet
>> >>>
>> >>> _______________________________________________
>> >>> seasar-dotnet mailing list
>> >>> [E-MAIL ADDRESS DELETED]
>> >>> https://ml.seasar.org/mailman/listinfo/seasar-dotnet
>> >>
>> >> _______________________________________________
>> >> seasar-dotnet mailing list
>> >> [E-MAIL ADDRESS DELETED]
>> >> https://ml.seasar.org/mailman/listinfo/seasar-dotnet
>> >>
>> >
>>
>> ------------------------------
>>
>> _______________________________________________
>> seasar-dotnet mailing list
>> [E-MAIL ADDRESS DELETED]
>> https://ml.seasar.org/mailman/listinfo/seasar-dotnet
>>
>>
>
> _______________________________________________
> seasar-dotnet mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-dotnet
>


seasar-dotnet メーリングリストの案内