[seasar-dotnet:1046] Re: DBFlute & SQLServer でのパラメータ付きストアドプロシージャの実行について

kubo [E-MAIL ADDRESS DELETED]
2008年 10月 22日 (水) 14:04:01 JST


久保(jflute)です。

原因わかりました。
完全にC# + SQLServer限定のバグでした。

http://dbflute.sandbox.seasar.org/download/dbflute/dbflute-0.8.2.zip
にて修正を反映させていますので、お試し願いますでしょうか?
(Sql2Entityしなおしてみて下さい)

2008/10/22 Nakai <[E-MAIL ADDRESS DELETED]>:
> 久保さん
>
>
> 失礼しました。ファイル間違えてました。
> 以下の通りです。
>
> [SpDbfluteTestPmb]: procedureReturnsResult
>    int? returnValue; // procedureColumnReturn(4, int)
>    String inParam; // procedureColumnIn(12, varchar)
>
> 中井
>
>
> Nakai <[E-MAIL ADDRESS DELETED]> wrote:
>
>> 久保さん
>>
>> 中井です。
>> ログを見ましたが、それらしいものが見当たらないです。
>> 念のため添付しましたが、ログファイルはこれでよろしいでしょうか?
>>
>>
>> kubo <[E-MAIL ADDRESS DELETED]> wrote:
>>
>> > 久保です。
>> >
>> > 中井さん、すいませんちょっと確認させて下さい。
>> > Sql2Entityしたときのログで
>> >
>> > [SpDbfluteTestPmb]
>> >     String inParam;
>> >
>> > のようなログが出力されると思うのですが、
>> > そのときinParamには「@」が付いていますでしょうか?
>> >
>> > 2008/10/22 Nakai <[E-MAIL ADDRESS DELETED]>:
>> > > 久保さん
>> > >
>> > > お世話になっております。
>> > > 対応ありがとうございます。
>> > > よろしくお願いいたします。
>> > >
>> > > 中井
>> > >
>> > >
>> > > kubo <[E-MAIL ADDRESS DELETED]> wrote:
>> > >
>> > >> 久保(jflute)です。
>> > >>
>> > >> 中井さん、こんにちは
>> > >>
>> > >> > Pmbクラスを下記のように変更すると正しく実行されました。
>> > >> > 前:public static readonly String inParam_PROCEDURE_PARAMETER = "@IN_PARAM, in";
>> > >> > 後:public static readonly String inParam_PROCEDURE_PARAMETER = "IN_PARAM, in";
>> > >> ご報告ありがとうございます。
>> > >> 現象からするとメタ情報から「@」まで取得されてしまうようですね。
>> > >> 除去するように修正したいと思います。
>> > >>
>> > >> > Java版のSQLServerサンプルにはパラメータ付きストアドプロシージャの
>> > >> > テストがなかったのですが、未対応なのでしょうか?
>> > >> 本当ですね。。。すいません。
>> > >> 多分SQLServerでのストアドの書き方がわからなくて、
>> > >> 途中で力尽きたんだと思います。
>> > >> 「SP_DBFLUTE_TEST」を参考に作らさせて頂きます。
>> > >>
>> > >> 2008/10/22 Nakai <[E-MAIL ADDRESS DELETED]>:
>> > >> > お世話になっております。
>> > >> > 中井と申します。
>> > >> >
>> > >> > 現在、C#版DBFlute0.8.1とSqlserver2005で以下のストアドプロシージャ
>> > >> > を実行したところ、Exceptionが発生してしまいます。
>> > >> >
>> > >> > 【ソース】
>> > >> > ------------------------------------------
>> > >> > CREATE PROCEDURE [dbo].[SP_DBFLUTE_TEST]
>> > >> >        @IN_PARAM varchar(8) = null
>> > >> > AS
>> > >> > BEGIN
>> > >> >
>> > >> >        SET NOCOUNT ON;
>> > >> > END
>> > >> >
>> > >> >
>> > >> > ------------------------------------------
>> > >> >
>> > >> > 【エラー内容】
>> > >> > "@@IN_PARAM はプロシージャ SP_DBFLUTE_TEST のパラメータではありません。"
>> > >> >
>> > >> > Pmbクラスを下記のように変更すると正しく実行されました。
>> > >> > 前:public static readonly String inParam_PROCEDURE_PARAMETER = "@IN_PARAM, in";
>> > >> > 後:public static readonly String inParam_PROCEDURE_PARAMETER = "IN_PARAM, in";
>> > >> >
>> > >> > Java版のSQLServerサンプルにはパラメータ付きストアドプロシージャの
>> > >> > テストがなかったのですが、未対応なのでしょうか?
>> > >> >
>> > >> > お忙しいところ申し訳ありませんが、よろしくお願い致します。
>> > >> > _______________________________________________
>> > >> > 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 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 mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-dotnet
>


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