[seasar-dotnet:1938] Re: S2Dao.NET + PLSQLにて複数行のSELECT結果を返す方法

kubo [E-MAIL ADDRESS DELETED]
2011年 2月 7日 (月) 21:51:48 JST


久保(jflute)です。

萩原さん、こんばんは

ちょっと S2Dao.NET の話はさっとコメントできませんが、
S2Dao.NET を使わなかったときの(いざってときの)話だけ。

> S2Dao.NETを使用せずに、別途コネクションを張り、OracleParameterにRefCursorを設定して
> Procedure側でもsys_ref_cursorを使用して取得しています。
> ここだけS2Dao.NETと別に接続を張ることは、できれば避けたいので、なんとかできないかなと思っています。

「S2Dao.NETと別に接続を張る」とありますが、
S2Dao.NETで使っている DataSource を使えば同じ接続で
実行できるかと思います。
(もちろん、実装が一箇所だけベタになるのは避けたい
って面は当然あるとは思いますけど)

2011/2/7 萩原 圭太 <[E-MAIL ADDRESS DELETED]>:
> お世話になります。萩原と申します。
>
> 現在、下記の環境にてS2Dao.NETを使用しています。
>
> 開発言語:VB.NET
> .NET framework:2.0
> データベース:Oracle10g
> データプロバイダ:ODP.NET
> S2Dao.NET:1.3.11.0
>
> パフォーマンスの問題から、現在アプリケーションより発行しているSQLを
> Procedureとして作り直し、結果を取得することを検討しています。
>
> S2Dao.NETのドキュメントを拝見して、検証したところ、Procedureの呼び出しおよび、
> OUTパラメータの取得は問題なくできました。
> ただし、本来の目的である複数行のSELECT文の結果を返すためにどうすればよいかわからず、
> 困っております。
>
> S2Dao.NETを使用せずに、別途コネクションを張り、OracleParameterにRefCursorを設定して
> Procedure側でもsys_ref_cursorを使用して取得しています。
> ここだけS2Dao.NETと別に接続を張ることは、できれば避けたいので、なんとかできないかなと思っています。
>
> S2Dao.NET単体でOracleからの複数行のSELECT結果を取得することは可能でしょうか?
> RefCursorは使えないような気がしていますので、何か別の方法でも結構です。
> Java版のS2Daoでは、Map形式で複数行のデータを取得できるような記述があると思うのですが、
> .NET版はそういったことは現在できないのでしょうか?
>
> ドキュメントやMLは目を通したつもりですが、もし見落としていた場合は申し訳ありません。
>
> 何かヒントになることでも頂けると幸いです。
> ご教授よろしくお願いいたします。
> _______________________________________________
> seasar-dotnet mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-dotnet
>


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