Sql exception

1 resposta
N

tenho uma tabela com os seguintes indices
1 PRIMARY KEY (codigo),
2 UNIQUE KEY cpf (cpf),
3 UNIQUE KEY rg (rg),
4 KEY cid_cod (cid_cod)

ou seja quando tento cadastrar o mesmo CPF seque a exceção
com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Duplicate entry ‘[CPF removido]’ for key 2

RG duplicado
com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Duplicate entry ‘9780111-1’ for key 3

OU SEJA ELE ESTA RETORNANDO O NUMERO DA KEY(INDICE)

quero tratar da seguinte forma se a KEY for 2
Mesagem CPF já cadastrado

se for KEY 3
mesagem RG já cadastrado

quero criar um sql exeception que VEJA qual KEY é, se for 2 mostre a mensagem 2, se for 3 mostre a mesagem 3

} catch (SQLException ex) {

System.out.println(ex);

return;

}

1 Resposta

fernei

nilodp,

O SQLException ex esta sendo representado pelo ex, neste caso vc pode usar deus recursos e aproveita-los em um if ou um metodo de tratamento desse erro, acredito que o ex tem um get para o codigo do erro, de uma checada ok.

Abraços!!

Criado 24 de setembro de 2008
Ultima resposta 24 de set. de 2008
Respostas 1
Participantes 2