[Seasar-user:3686] 引数のないストアド呼び出し
Koichiro Hara
[E-MAIL ADDRESS DELETED]
2006年 5月 24日 (水) 09:16:20 JST
原です。
MSSQLServer2005
s2-dao-1.0.31
SQLServer2005JDBCドライバ
で引数無しストアドプロシージャを呼び出すと以下のようなエラー
が発生します。
CREATE PROCEDURE TESTPROC
AS
BEGIN
return 5
END
GO
public static final String testProc_PROCEDURE = "TESTPROC";
public int testProc();
public void testTestProc() {
assertEquals( 5, dao.testProc() );
}
Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: ')' 付近に不適切な構文があります。
ダミーの引数をつけてやると問題なく実行できるようです。
ALTER PROCEDURE [dbo].[TESTPROC]
@DUMMY int
AS
BEGIN
return 5
END
GO
public static final String testProc_PROCEDURE = "TESTPROC";
public int testProc(int dummy);
public void testTestProc() {
assertEquals( 5, dao.testProc(0) );
}
AbstractBasicProcedureHandlerの181行目あたりbuf.length-1で引
数がない場合、"("を削ってしまいSQL文が崩れているように思いま
すが、いかがでしょうか?
-------------------------------------------
Koichiro Hara
原 浩一郎
[E-MAIL ADDRESS DELETED]
Seasar-user メーリングリストの案内