Int em String

7 respostas Resolvido
intstringprogramaçãojava
V

Boa tarde. Preciso passar o nchip, numero e rca para String, porém, não estou conseguindo. Tentei usar o parseInt.

public class IncluirEditarMostrarDAO {
	Dados ds = new Dados ();
	
	public int Incluir (Dados ds) throws SQLException {
		conexao conexao = new conexao();
		int registros;
		
		try (PreparedStatement pstmt = 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();
		}
	}
}

7 Respostas

Rodrigo_Void

Pq não? Está dando erro? Se sim, posta ele.

Lucas_Camara

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:

public class IncluirEditarMostrarDAO {
	Dados ds = new Dados ();
	
	public int Incluir (Dados ds) throws SQLException {
		conexao conexao = new conexao();
		int registros;
		
		try {
			PreparedStatement pstmt =
				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(Exception ex) {
			// trata o erro
		}
	}
}
V

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_Void

É um try with resouces.
Ele automaticamente vai dar close no pstmt, não precisando todo aquele código do finally.

V

Opa então no getRca, getNchip e getNumero ainda está alegando int cannot

Lucas_Camara

Caramba, não conhecia isso. Valeu!

Rodrigo_Void
Solucao aceita

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

Criado 9 de junho de 2017
Ultima resposta 9 de jun. de 2017
Respostas 7
Participantes 3