- - PR -
ODP.NETに関して
1|2|3
次のページへ»
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-05-25 14:52
ODP.NET、ASP.NET2.0 を使用して
Oracle10gに対して接続を試みております。 SQLを実行すると、 sql plus , object blowserで一瞬で帰ってくる処理が、 10秒、20秒かかってしまいます。 トレースしたところ、 adp.Fill(ds, "dummy") の部分で時間を食っておりました。 実際DBから取得するデータは300行 Varchar2(10)を10フィールドです。 なにか設定がまずいのでしょうか? それともこんなに時間の掛かるものでしょうか? cn:OracleConnection adp:OracleDataAdapter cmd:OracleCommand ds:dataset ' Oracle Connection Object設定 cn.ConnectionString = ***** cn.Open() ' Oracle Command Object設定 cmd.Connection() = cn cmd.CommandText() = "SELECT *****" ' Oracle Data Adapter Object設定 adp.SelectCommand() = cmd adp.Fill(ds, "dummy") ' Data Bind DataGrid1.DataSource() = ds DataBind() | ||||||||
|
投稿日時: 2006-05-25 15:36
DataReader の場合も同様か、確認してみてください。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2006-05-25 15:41
DataReaderを使用した場合
すぐに返事が返ってきます。 DataReader = cmd.ExecuteReader としたところ、すぐに返事は返ってきたのですが、 DataGrid.DataSource = DataReader DataBind() がうまくできませんでしたが。。。 | ||||||||
|
投稿日時: 2006-05-25 15:55
ということは、詰め込むのに時間を浪費しているということですね。 応答ならともかく... なんでしょうね。
そりゃ、DataReader は DataSource じゃないですからね。 (問題を切り分けるためであり、解決策ではありません) _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2006-05-25 18:14
の時間を計ったらどうなりますか? | ||||||||
|
投稿日時: 2006-05-25 19:40
toじゃんぬねっとさん
確かに解決策にはなりませんが、 結果表示までどれくらいかかるか知りたかったもので。。。 また、 DataReader = cmd.ExecuteReader datagrid.datasource = DataReader databind では、結果が表示されませんでした。 DataReaderからdatasourceが認識できるようにするにはどうすればよいのでしょうか? toかるあさん while文を追加しても結果はすぐに返ってきます。 | ||||||||
|
投稿日時: 2006-05-25 20:13
toかるあさん
もうしわけございません。 Whileを実行しているとやはり fillどうよう時間がかかります。 Fetchの部分で時間がかかるんでしょうか | ||||||||
|
投稿日時: 2006-05-25 21:36
うーん、件数もそんなに多くなさそうだし何ででしょうね とりあえず、 ・Oracle(Server) のバージョン ・Oracle(Client) のバージョン ・ODP.NET のバージョン ・開示できる範囲での接続文字列 ・OS認証の有無 を詳細に教えてもらえますか? |
1|2|3
次のページへ»