| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 22/01/2007 17:50:37
|
leoloko
JavaChild
Membro desde: 15/05/2005 12:05:19
Mensagens: 149
Offline
|
Por exemplo, como faço pra saber se meu ResultSet encontrou a linha procurada?
Porque eu to fazendo a parte de login de um sistema...
Quando ele encontra o usuario no banco, tudo ok, ele faz o que tem que fazer certinho...
Agora quando não encontra ou o cara deixou o campo usuário em branco, ele dah um erro... de NullPointerException
Então, como eu verifico se a consulta retornou uma linha, ou nenhuma?
tipo se encontrou faça isso senão faça aquilo...
Atualmente faço if(rs.next()){}else{} mas acho que num tah certo!
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 22/01/2007 17:53:03
|
thingol
Moderador
Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline
|
O que você faz é o que deve ser feito (if ... { } else { }).
É o mais rápido, já que a informação que você precisa não é a contagem de linhas, mas só saber se achou ou não.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 22/01/2007 17:56:52
|
fabim
GUJ Master
![[Avatar]](/images/avatar/d4e3e8180a65648886ff348c7a6bbff5.jpg)
Membro desde: 14/12/2006 19:30:03
Mensagens: 1268
Localização: Vitoria - Espirito Santo
Offline
|
e isso q vc fez mesmo...
ja tentei fazer (rs != null), mas nao da pq segundo a documentacao o retorno do RS e (never null)...
|
ειπεν αυτη ο ιησους εγω ειμι η αναστασις και η ζωη ο πιστευων εις εμε καν αποθανη ζησεται
Sun Certified Web Component Developer
Sun Certified Java Programmer
Sun Certified Java Associate
Sun Certified Business Component Developer - Em Andamento
Bacharelando em Sistemas de Informacao
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 22/01/2007 17:58:42
|
julianostr
GUJ Ranger
![[Avatar]](/images/avatar/ca7e09eacf1ae34bc819d495c5adfed9.jpg)
Membro desde: 31/03/2006 14:16:14
Mensagens: 855
Localização: Blumenau - SC
Offline
|
Se você fez
Atualmente faço if(rs.next()){}else{} mas acho que num tah certo!
e ainda tá dando erro de NullPointerException, é por que o problema é outro, não nessa condição aí. Alguma variável inicializada com null não recebeu nenhum outro valor e ao tentar referenciar algum método, por exemplo, explodiu-se.
Coloque tudo isso num try/catch e no catch coloque um printStacktrace.
|
LASER
Light Amplification by Stimulated Emission of Radiation |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/01/2007 09:19:44
|
karen_barbatto
JavaChild
Membro desde: 03/10/2006 09:19:29
Mensagens: 149
Offline
|
posta um trecho do seu código para gente entender sua pergunta com mais facilidade
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/01/2007 09:23:25
|
Marck
Virtual Machine Man
![[Avatar]](/images/avatar/efc9ea3e0c2ed2c2481fe1252019266e.jpg)
Membro desde: 15/08/2006 16:15:11
Mensagens: 598
Offline
|
Olá.
Acho que o erro e em outra parte mesmo. Pois se o ResultSet nao encontrar resultado ele mostra erro no Exception. Lá vc pode personalizar uma infomaçao de nao encontrado com um JOptionPane.
espero ter ajudado,
Marck
|
"A vida me deu tudo que eu pedi. Agora se o que eu pedi foi pouco, ai o problema já é meu!". Sartre
Besteiras sobre programação
http://toobject.wordpress.com/
DataModelDinamic |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 30/05/2008 16:02:56
|
igor.cardoso
Thread.start()
Membro desde: 30/04/2008 10:52:20
Mensagens: 47
Offline
|
Olá pessoal, reaproveitando a pergunta, preciso saber se o rs encontrou algo no banco.
seria algo do tipo rs.length() ou rs.size() porem ele não tem nenhum desses metodos.
como faria para saber se o rs retornou alguma linha?.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 30/05/2008 16:05:17
|
TeiTei
Virtual Machine Man
![[Avatar]](/images/avatar/34d9646a6c7d6c0de3ece3de6f06a91f.jpg)
Membro desde: 31/10/2007 07:36:22
Mensagens: 665
Offline
|
cara e simples da um
N linha do next vc esta validando se existem alguem la dentro do rs. ou seja existe um prixomo? pois ele nunca volta null sempre existe algo no retorno de um rs creio que sejam as informações para o metadata mas isso foje, então ai depois de validar se existe algo volte para a 1º posição com o previus e imprima na tela caso ele entre no else e pq nao veio nada do banco.
This message was edited 1 time. Last update was at 30/05/2008 16:08:20
|
Javai? |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 30/05/2008 16:07:06
|
Bruno Laturner
GUJ Expert
![[Avatar]](/images/avatar/5800ccd9514fd789d08e5831951aa6bc.jpg)
Membro desde: 18/02/2008 16:17:53
Mensagens: 3002
Offline
|
|
A resposta acima foi achada em menos de 5 minutos no google.
The prisoner falls in love with his chains. --E.W. Dijkstra |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 30/05/2008 16:09:29
|
TeiTei
Virtual Machine Man
![[Avatar]](/images/avatar/34d9646a6c7d6c0de3ece3de6f06a91f.jpg)
Membro desde: 31/10/2007 07:36:22
Mensagens: 665
Offline
|
Bruno Laturner wrote:
desta forma ele estaria dando um next() no rs e perderia o 1º registro ele deve voltar com o previus....especificação do JDBC 2.0 resultset rolaveis
|
Javai? |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 30/05/2008 16:25:32
|
Bruno Laturner
GUJ Expert
![[Avatar]](/images/avatar/5800ccd9514fd789d08e5831951aa6bc.jpg)
Membro desde: 18/02/2008 16:17:53
Mensagens: 3002
Offline
|
TeiTei wrote:
Bruno Laturner wrote:
desta forma ele estaria dando um next() no rs e perderia o 1º registro ele deve voltar com o previus....especificação do JDBC 2.0 resultset rolaveis
É meio estranho checar se existe primeiro para depois obter.
Geralmente eu já executo trazendo os resultados:Se quiser mesmo ver quantos tem p/ depois executar, então só com esse tipo que você falou, e executando um beforeFirst()
Para saber o número de resultados retornados, tente
Mesmo caso de antes, precisa do beforeFirst() se quiser obter algo depois.
|
A resposta acima foi achada em menos de 5 minutos no google.
The prisoner falls in love with his chains. --E.W. Dijkstra |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 30/05/2008 16:40:57
|
s4nchez
Virtual Machine Man
![[Avatar]](/images/avatar/bef4d169d8bddd17d68303877a3ea945.jpg)
Membro desde: 05/06/2006 11:35:55
Mensagens: 674
Localização: London, UK
Offline
|
Pra verificar se um usuário existe, se você está usando "count" no seu select, ele vai sempre retornar alguma coisa. Se não tá usando, talvez devesse.
Na dúvida, posta seu código pra gente ajudar.
|
Ivan Sanchez | coding dojo | blog | twitter |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 02/06/2008 09:38:40
|
igor.cardoso
Thread.start()
Membro desde: 30/04/2008 10:52:20
Mensagens: 47
Offline
|
TeiTei wrote:cara e simples da um
N linha do next vc esta validando se existem alguem la dentro do rs. ou seja existe um prixomo? pois ele nunca volta null sempre existe algo no retorno de um rs creio que sejam as informações para o metadata mas isso foje, então ai depois de validar se existe algo volte para a 1º posição com o previus e imprima na tela caso ele entre no else e pq nao veio nada do banco.
Fala pessoal, obrigado pela ajuda, era meio logico o else, mas não tinha observado isso,
enfim, se retornar algo da consulta, ele executa os get, senão, ja vai para o else.
Vlw!
|
|
|
 |
|
|