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

萩原 圭太 [E-MAIL ADDRESS DELETED]
2011年 2月 8日 (火) 15:37:22 JST


萩原です。

久保さん、アドバイスありがとうございます。

>「S2Dao.NETと別に接続を張る」とありますが、
>S2Dao.NETで使っている DataSource を使えば同じ接続で
>実行できるかと思います。
>(もちろん、実装が一箇所だけベタになるのは避けたい
>って面は当然あるとは思いますけど)
なるほどと思い、ためしに実装してみました。
現在のコーディングで一番気持ちが悪いところがここなので、
少し、すっきりしました。
最悪他に手段がなさそうであれば、この対応で行きたいと思います。


>久保(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 mailing list
>[E-MAIL ADDRESS DELETED]
>https://ml.seasar.org/mailman/listinfo/seasar-dotnet


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