我在此代码中做错了什么?它给出了一个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);
}
您的调用方法顺序错误。首先,准备语句,然后设置绑定变量值。改变
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()));
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句