Boa tarde. Preciso passar o nchip, numero e rca para String, porém, não estou conseguindo. Tentei usar o parseInt.
publicclassIncluirEditarMostrarDAO{Dadosds=newDados();publicintIncluir(Dadosds)throwsSQLException{conexaoconexao=newconexao();intregistros;try(PreparedStatementpstmt=conexao.getConexao().prepareStatement("INSERT INTO Dados (pes_nome, pes_nchip, pes_rca, pes_regiao, pes_numero)"+"VALUES (?,?,?,?,?)")){pstmt.setString(1,ds.getNome().toUpperCase().trim());pstmt.setString(2,ds.getNchip().trim());pstmt.setString(3,ds.getRca().trim());pstmt.setString(4,ds.getRegiao().trim());pstmt.setString(5,ds.getNumero().trim());registros=pstmt.executeUpdate();}}}
Porque o try do seu código possui parênteses recebendo um outro código? Isso está errado. E ainda está faltando um catch ou finally para a sintaxe ficar correta.
Deveria ser:
publicclassIncluirEditarMostrarDAO{Dadosds=newDados();publicintIncluir(Dadosds)throwsSQLException{conexaoconexao=newconexao();intregistros;try{PreparedStatementpstmt=conexao.getConexao().prepareStatement("INSERT INTO Dados (pes_nome, pes_nchip, pes_rca, pes_regiao, pes_numero)"+"VALUES (?,?,?,?,?)")pstmt.setString(1,ds.getNome().toUpperCase().trim());pstmt.setString(2,ds.getNchip().trim());pstmt.setString(3,ds.getRca().trim());pstmt.setString(4,ds.getRegiao().trim());pstmt.setString(5,ds.getNumero().trim());registros=pstmt.executeUpdate();}catch(Exceptionex){// trata o erro}}}
V
vdeangeli
Então fala int cannot, sei que tem que transformar o int em String, mais a onde eu coloco o parseInt, já coloquei em tudo quanto e lugar e continua com a mesma informação
Rodrigo_Void1 like
É um try with resouces.
Ele automaticamente vai dar close no pstmt, não precisando todo aquele código do finally.
V
vdeangeli
Opa então no getRca, getNchip e getNumero ainda está alegando int cannot
Lucas_Camara
Caramba, não conhecia isso. Valeu!
Solucao aceita
Rodrigo_Void
Ainda parece vago, mas assim:
pstmt.setString é para setar uma String em um campo, se ele for deste tipo no banco.
Se ele for int no banco vc deve usar pstmt.setInt