[CONTAINERNET-42] テーブル定義情報の取得に時間がかかる場合がある Created: 2006-09-14  Updated: 2008-02-20  Resolved: 2008-02-20

Status: Resolved
Project: S2Container.NET
Component/s: S2ADO.NET
Affects Version/s: 1.2.5
Fix Version/s: 1.3.7

Type: Improvement Priority: Major
Reporter: sugimotokazuya Assignee: rmiyax
Resolution: Fixed Votes: 0
Labels: None
Environment:

Oracle10gとODP.NETで遅くなる現象が確認されています



 Description   

データベース毎にシステムテーブルからテーブル定義を取得するように変更するか、テーブル定義情報を保存したDataSetをXMLに保存しておき、ロードできるようにする等、対策が必要です。
Data Providerによって、時間のかかるもの、かからないものがあるようです。



 Comments   
Comment by rmiyax [ 2008-02-20 ]

DataSetのキャッシュ機能を追加しました。

Comment by rmiyax [ 2008-02-10 ]

テーブル定義情報を保存したDataSetからテーブル定義情報を取得できるようにしたいと思います。

使い方は次になります。
1. VisualStudio2005のソリューションエクスプローラから、DataSetを新規追加。
2. VisualStudio2005のDataSetデザイナ画面にサーバーエクスプローラからテーブル情報をドラッグ&ドロップ。
3. Dao.diconでDataSetのクラス名を登録。
例:
<component class="Seasar.Dao.Impl.DaoMetaDataFactoryImpl">
<property name="DBMetaData">
<component class="Seasar.Extension.ADO.Impl.DatabaseMetaDataImpl">
<property name="MetaDataSetClassName">"Seasar.ContainerNet42.Dao.EmployeeDataSet"</property>
</component>
</property>
</component>

開発者は、DataSetデザイナ画面からドラッグ&ドロップでテーブル定義情報を作成/更新できるので
テーブル情報の作成が簡単です。

Comment by rmiyax [ 2006-09-20 ]

念のため、ODP.NETのトレースログを取得して遅くなっている箇所を特定していただけないでしょうか?
あと、ODP.NETのバージョン番号もお願いします。

トレースログの取得方法は下記のURLを参照してください。
http://otndnld.oracle.co.jp/document/products/oracle10g/102/windows/B31247-01/featDebug.htm#i1008637

Generated at Fri Apr 18 15:43:42 JST 2025 using Jira 10.5.0#10050000-sha1:9d9d098bb7b67e8dba8da380ba9c3900d82ac3cf.