Int em String

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();
		}
	}
}

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

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
		}
	}
}

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

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

1 curtida

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

Caramba, não conhecia isso. Valeu!

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