[seasar-dotnet:284] Re: [S2Unit]ExcelデータのWriteDb順がシート定義順でない。

Ryo Miyagi rmiyax @ yahoo.co.jp
2006年 7月 5日 (水) 18:11:56 JST


宮城です。

>   期待するINSERT順序は、(Java版を基準にしてしまっていますが...)
>       BBB, DDD, AAA, CCC
>   ですが、
>       AAA, BBB, CCC, DDD
>   という順序で登録されてしまいます(アルファベット順!?)。
>   よって、FK制約の関連で正常に登録ができないです。
(中略)
> OleDbConnection.GetOleDbSchemaTable()に詳しくないので、
> パッとどうすれば直るのか想像が付かない状態なのですが、
> エクセルのシート定義順でWriteDbされるように修正できませんでしょうか?

GetOleDbSchemaTable()の仕様なのか
アルファベット順にソートされてしまうため現象では修正は難しいです。
申し訳ありません。

回避策としてシート名の先頭に"#{順序}"を付けると
その順序でデータを登録します。

詳細は、S2Unitのドキュメント(http://s2container.net.seasar.org/s2unit.html)
の一番最後を参照していただければと思います。

目立たないところに記述していましのでFAQに上げることにします。
御指摘ありがとうございました。


--------------------------------------
Let's start Yahoo! Auction  -  Free Campaign Now!
http://pr.mail.yahoo.co.jp/auction/


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