Data truncation: Data too long for column

1 resposta
jfaguiar

Boa tarde amigos.
Estou tendo esse erro ao executar este comando insert. Só para deixar claro, as vaviáveis após values sao as jtextfield.
O que estou fazendo de errado?
Obrigado

String sql = “insert into TbUfs(UFSIG, UFNOME, UFCAPITAL, UFICMS, UFICMSST) values ( '” + txtUfsig + “’, '” + txtNome + “’, '” + txtCapital + “’, '” + txtIcms + “’, '” + txtIcmsst +"’);";

1 Resposta

R

Você está tentando inserir o objeto inteiro no banco, não o valor dos campos de texto. Ao chamar a variável “txtUfsig”, você puxa o campo inteiro, com todos seus atributos, inclusive o texto. Use o método .getText() para pegar o valor do campo, e caso queira atribuir alguma coisa, use o .setText(valor);

Procure evitar também concatenação de atributos na string de SQL, uma vez que isso pode quebrar a linha de comando ao inserir determinados valores (como caixa d’água) e permite ataques de SQL Injection. Um tratamento possível pra isso é o Prepared Statement, onde você passa os valores de cada coluna por um parâmetro.

Criado 25 de maio de 2017
Ultima resposta 25 de mai. de 2017
Respostas 1
Participantes 2