SQLException Показатель параметра вне диапазона

1

Что я делаю неправильно в этом коде? Это дает SQLException, что параметр выходит за пределы диапазона, в то время как я думаю, что дал параметр.

 try{
            String sql = "select item_type as 'Item Type', md_by as 'Made By',"
                    + " model as 'Model', selling_price as 'Selling Price', "
                    + "purchase_price as 'Purchase Price', "
                    + "purchase_date as 'Purchase Date', vouch_no as 'Voucher No.', "
                    + "vouch_date as 'Voucher Date', record_no as 'Record No.' "
                    + "from purchase where vouch_no = ?";
            ps.setInt(1, Integer.parseInt(txt_vouchno_p.getText()));
            ps = con.prepareStatement(sql);
            rs = ps.executeQuery();
            Table_p.setModel(DbUtils.resultSetToTableModel(rs));

        }   
        catch(SQLException ex){

                JOptionPane.showMessageDialog(null, "Error: " + ex);

        }
        catch(Exception ex){
            JOptionPane.showMessageDialog(null, "Error: " + ex);
        }
  • 0
    Какое точное сообщение об ошибке
Теги:
exception
jdbc

1 ответ

4
Лучший ответ

Ваш метод вызова неправильный. Во-первых, вы готовите инструкцию, тогда вы устанавливаете значения переменной привязки. + Изменить

ps.setInt(1, Integer.parseInt(txt_vouchno_p.getText()));
ps = con.prepareStatement(sql);

в

ps = con.prepareStatement(sql);
ps.setInt(1, Integer.parseInt(txt_vouchno_p.getText()));
  • 0
    Понял. Благодарю. :)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню