Boa noite pessoal
o meu problema é o seguinte, tenho uma tela de venda que eu coloco o cliente e quando eu clico no botão produto ele abre a tela de produtos e já cria uma venda na minha tabela de pedido do banco de dados, até ai tudo bem se eu olha no banco a venda já foi iniciada com o id do pedido. o problema e que quando eu coloco os produtos na tabela de venda e mando salvar no banco a venda esta dando esse erro java.lang.arrayindexoutofboundsexception: -1 e não grava nada no banco.
um amigo meu me disse que tenho que fazer um WHILE para ir adicionando os produtos no banco, mas não consegui fazer esse WHILE até agora.
se alguém puder me ajudar eu fico muito agradecido.
esse é o meu codigo
public void ItensPedido(ItensPedidoModel itens) {
StringBuilder sql = new StringBuilder();
Connection conexao;
PreparedStatement pst;
int coluna = tbl_venda.getSelectedRow();
try {
sql.append("INSERT INTO itens_pedido (id, id_pedido, produto, quantidade, valor_unitario, valor_total, desconto) ");
sql.append("VALUES (?, ?, ?, ?, ?, ?, ?) ");
conexao = ModuloConexao.conector();
pst = conexao.prepareStatement(sql.toString());
itens.setId_pedido(Integer.parseInt(txt_id_venda.getText()));
itens.setProduto(Integer.parseInt(tbl_venda.getValueAt(coluna, 1).toString()));
itens.setQuantidade(Integer.parseInt(tbl_venda.getValueAt(coluna, 0).toString()));
itens.setValor_unitario(Double.parseDouble(tbl_venda.getValueAt(coluna, 2).toString()));
itens.setValor_total(Double.parseDouble(tbl_venda.getValueAt(coluna, 3).toString()));
pst.executeQuery();
JOptionPane.showMessageDialog(null, "Venda efetuada com sucesso");
} catch (Exception erro) {
JOptionPane.showMessageDialog(null, "Erro ao realizar a venda. " + "\n" + erro);
}
}
