Mudar o cursor para o próximo conjunto de registros

Olá, bom dia.

Situação: tenho um Stored Procedure com 3 selects distintos, ou seja, ele me retorna 3 conjuntos de registros diferentes.

Sistema: jdbc sqlserver2000 driver m$

Dúvida: como navegar entre estes conjuntos de registros?

Procurei um pouco no google mas não achei nada pertinenete, talvez nem saiba o que procurar hehe só encontro rs.next() :expressionless:

Valeu!

Hmmm… uma vez tive esse tipo de problema… minha sorte é que os conjuntos eram de tabelas similares com poucas diferenças. O que eu fiz foi criar uma tabela virtual e retornar os 4 selects que eu tinha nessa tabela virtual… talvez isso te dê uma luz?!

Valeu pelo reply cara :smiley:

Bem, há algumas possibilidades como esta que você falou de criar uma View.
Também poderia juntar tudo no return do SP e manipular depois.

Mas seria melhor para o projeto evitar esses procedimentos, por isso estou procurando a uam saída mais chique hehe

Mas se não tiver jeito mesmo eu vou seguir sua sugestão :smiley:

é eu sei do q c tá falando… :frowning:
mas as vezes parece inevitável “botar a mão no lixo”…

Ta-dá!

Statment.getMoreResults()

\o/

lol !!!

getMoreResults()

Cool!! Valeu LIPE! :smiley:

Ow,
Que negocio eh esse de retornar tres conjuntos de registros… num entendi… fiquei curioso :smiley:

Vc retorna 3 resultsets ? Ou sao 3 linhas num resultset ???

São 3 resultSets diferentes retornados de uma única consulta.

Isso ocorre quando a consulta se dá assim:

SELECT * FROM tSosiasdoHarryPotter WHERE Sosia=CV
SELECT * FROM tFlooderdoForum WHERE Flooder=CV

Não importa quantos REGISTROS cada um dos selects retornasse, mas para acessar o conteudo de ambos é necessário usar o método legal escrito acima \o/

:shock: :o :o :o :o :o :o :o :o :o

:arrow: Bacana!!!

:idea: :idea: :idea:

Olha que chique:

			do
			{
				rs = sp.getResultSet();
				rsmd = rs.getMetaData();
				while( rs.next() )
					for( int i = 1; i <= rsmd.getColumnCount(); ++i )
						sRs.add( rs.getString ( i ) );
				
				for( int i = 1; i <= rsmd.getColumnCount(); i++ )
					sColumNames.add( rsmd.getColumnLabel( i ) );
			}while( sp.getMoreResults() );