Estou com problemas em realizar uma consulta no bd e guardar esta em uma variavel. Tratei o erro e variavel esta recebendo null. Alguem pode me ajudar???
OBs.: o crea é uma string e esta sendo passado por parametro.
Stringcrea=crea; conexao(); try{ Stmt=con.createStatement(); RS=Stmt.executeQuery("Select codeng from engenheiro where crea = '"+crea+"'"); if(!RS.next()) Codeng="1"; if(RS.next()) Codeng=RS.getString("codeng"); }
O problema eh que voce esta chamando next() 2 vezes. Outro ponto eh que voce esta declarando variaveis com letras maiusculas, o que vai contra o padrao da linguagem. O seu codigo ficaria como:
Stringcrea=crea;conexao();try{stmt=con.createStatement();rs=stmt.executeQuery("Select codeng from engenheiro where crea = '"+crea+"'");if(!rs.next()) {codeng="1";}elsecodeng=rs.getString("codeng");}}
Note que um outro problema eh que voce esta usando Statement ( createStatement() ) ao inves de PreparedStatements. Isso deixa brechas de seguranca no teu codigo.
Ha um tutorial aqui no GUJ ( secao Artigos ) sobre PreparedStatement. Aconselho uma lida nele.
Rafael
A
allansk
Completando o que o Rafael disse, segue uns links que seria interessante você ler pra te ajudar (além do forum claro! ):