我在sqlserver2005里创建了一个存储过程如下:create proc getSubDir(@id nvarchar(36))
as
SET NOCOUNT ON
declare @tableRt table(id nvarchar(36),[name] nvarchar(256),PARENTID nvarchar(36),COUNTRES int)
insert @tableRt 
select folder.PROJECTID,folder.[NAME],folder.PARENTID,
(select COUNT(res.PROJECTID) from COM_PROJECTRESOURCE res
 where folder.PROJECTID = res.PROJECTID)
from COM_PROJECT folder
where PARENTID = @id AND folder.[TYPE] = 0
while @@rowcount > 0
insert @tableRt 
select subfolder.PROJECTID,subfolder.[NAME],subfolder.PARENTID,
(select COUNT(subres.PROJECTID) from COM_PROJECTRESOURCE subres
 where subfolder.PROJECTID = subres.PROJECTID)
 from COM_PROJECT as subfolder
inner join @tableRt as parentfolder 
on subfolder.PARENTID = parentfolder.id 
and subfolder.PROJECTID not in(select id from @tableRt)
select * from @tableRt
GO现在可以确认的是存储过程是正确的,在查询分析器里也能返回结果,但是我通过jdbc调用这个存储过程时如下:
CallableStatement statement = IMAM2DAO.conn.prepareCall("{call getSubDir(?)}");
statement.setString(1, "参数");
statement.executeQuery();
ResultSet rs = statement.getResultSet();
系统总是报:该语句没有返回结果集。
我也试过使用execute()的方式,也是得不到返回的select结果集,请问如何得到结果?