Galera to tentando dar um insert e depois um alterar e da esse erro ele grava os dados no banco mas quando tento carregar da essa exception
Ate agora não entendo o pq , minhas variáveis são todas String ,e minha tabela é criada como Varchar .
java.sql.SQLException: Comparisons between 'VARCHAR' and 'INTEGER' are not supported.
pq isso!
Qual o SQL que dispara esta exception?
Segue a codigo
[code]
try {
ResultSet rs = null;
con = DAOConexao.getConn();
//System.out.println(con);
String sql = " Select * from tb_Cadastro where codigo = " + codigo;
// sql = String.format(sql, txtCodigoSegurado.getText());
pstm = con.prepareStatement(sql); // aqui é quando ele da a Exception
rs = pstm.executeQuery(); [/code]
E como a variável codigo chega ali?
Aliás, seria mais correto fazer:
String sql = " Select * from tb_Cadastro where codigo = ?";
// sql = String.format(sql, txtCodigoSegurado.getText());
pstm = con.prepareStatement(sql); // aqui é quando ele da a Exception
rs.setString(1, codigo);/*supondo que codigo seja uma String realmente*/
rs = pstm.executeQuery();
Verifica qual é o tipo primitivo do campo Codigo da sua tabela se é igual ao tipo primitivo da variavel Codigo do seu sistema.
Então olha ele montado pra ver se tem uma noção
[code]public SeguradoTO consultar(String codigo){ //Estou retornando o código ele recebe o valor quando eu debugo mas cai naquela linha e da o erro
SeguradoTO seguradoTO = new SeguradoTO();
try {
ResultSet rs = null;
con = DAOConexao.getConn();
//System.out.println(con);
String sql = " Select * from tb_Cadastro where codigo = " + codigo;
// sql = String.format(sql, txtCodigoSegurado.getText());
pstm = con.prepareStatement(sql); // aqui já cai na Exception
rs = pstm.executeQuery();
if(rs.next()){
//rs.last();
seguradoTO.setCodigo(rs.getString("Codigo"));
seguradoTO.setNomeSegurado(rs.getString("NomeSegurado"));
seguradoTO.setNascimento(rs.getString("Nascimento"));
// fora o resto
[/code]
no botão carregar
[code]private void btnCarregarActionPerformed(java.awt.event.ActionEvent evt) {
String codigo = txtCodigoSegurado.getText();
SeguradoTO seguradoTo = cad.consultar(codigo);
carregar(seguradoTo);
}
[/code]
chamo o carregar
[code]private SeguradoTO carregar(SeguradoTO seguradoTO){
txtCodigo.setText(seguradoTO.getCodigo());
txtBairro.setText(seguradoTO.getBairro());
// // fora o resto[/code]
[quote=charleston10]Verifica qual é o tipo primitivo do campo Codigo da sua tabela se é igual ao tipo primitivo da variavel Codigo do seu sistema.[/quote]+1