JDBC 관련... 아무도 모르시나요?
-
2011년 6월 20일 월요일 오전 12:37MS SQL2008 R2를 사용중입니다.
프로시져를 Call하여 에러가 발생되었는데...
MS사이트에서 어디서 문의를 해야하는지 알수가 없어 여기에 문의 드립니다.
jdbc 1.1, 1.2, 2.0, 3.0 테스트를 해본결과 전부 같은 에러(문에서 결과 집합을 반환하지 않았습니다.)가 발생합니다.
여러모로 검색을 해봤는데 JDBC 드라이버 문제라고는 하는데 뾰족한 답변이 없어 답답한 노릇입니다.
아래와 같은 경험을 하시거나 해결 방법을 아시는분께 답변을 구하고 자 합니다.
====================================================================================================
114718 [Handler 5] DEBUG oz51.dm.DataModule - Initializing OZ Procedure data set's host data set
114718 [Handler 5] DEBUG oz51.dm.DataModule - procedure query : { call MAAM910F_LIST ( ?,?,?,? ) }
114719 [Handler 5] DEBUG oz51.dm.DataModule - Procedure Parameter : 1:Input = 2011, 2:Input = O105100, 3:Input = Z400100, 4:Input = Z400200
117044 [Handler 5] ERROR oz51.dm.DataModule - Fail to get OZProcedureResultSet :문에서 결과 집합을 반환하지 않았습니다.
com.microsoft.sqlserver.jdbc.SQLServerException: 문에서 결과 집합을 반환하지 않았습니다.
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:171)
at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.doExecutePreparedStatement(SQLServerPreparedStatement.java:394)
at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement$PrepStmtExecCmd.doExecute(SQLServerPreparedStatement.java:340)
at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:4575)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:1400)
at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeCommand(SQLServerStatement.java:179)
at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeStatement(SQLServerStatement.java:154)
at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.executeQuery(SQLServerPreparedStatement.java:283)
at oz.dm.meta.OZProcedureDataSet.a(DashoA12957:355)
at oz.dm.meta.OZProcedureDataSet.getResultSet(DashoA12957:219)
at oz.dm.meta.OZDataFactory.getMultiDataSetMetaPreview(DashoA12957:1200)
at oz.framework.cp.message.qd.OZQDRequest.fetchMessage(DashoA12957:193)
at oz.server.cozcr.a(DashoA12957:219)
at oz.server.cozcr.a(DashoA12957:126)
at oz.server.cozcq.run(DashoA12957:62)
at java.lang.Thread.run(Thread.java:595)
모든 응답
-
2012년 7월 25일 수요일 오전 12:55
프로시저 상단에 SET NOCOUNT ON 을 한 번 추가해 보세요.
ALTER PROC [sp_name]
AS
BEGIN
SET NOCOUNT ON;
~~~
~~~
END
참고자료.
http://msdn.microsoft.com/en-us/library/ms378630(v=SQL.110).aspx
http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlcommand.executenonquery.aspx

