Mysql 例外情况;参数索引超出范围(1>;参数数量,即0)。”;

Mysql 例外情况;参数索引超出范围(1>;参数数量,即0)。”;,mysql,netbeans,Mysql,Netbeans,pstm是否在您的代码中定义?希望您需要将prepareStatement分配给pstm,然后您可以设置参数值 query="INSERT INTO paint_inventory(ID,Name,type,gallons,quarters) VALUES(?,?,?,?,?)"; con.prepareStatement(query); pstm.setInt(1,Integer.parseInt(itemID_newitem_field.getText())); pstm.setString

pstm
是否在您的代码中定义?希望您需要将
prepareStatement
分配给
pstm
,然后您可以设置参数值

query="INSERT INTO paint_inventory(ID,Name,type,gallons,quarters) VALUES(?,?,?,?,?)";
con.prepareStatement(query);
pstm.setInt(1,Integer.parseInt(itemID_newitem_field.getText()));
pstm.setString(2,name_newitem_field.getText());
pstm.setString(3,type_newitem_field.getText());
pstm.setInt(4,Integer.parseInt(gallons_quantity_newitem_field.getText()));
pstm.setInt(5,Integer.parseInt(quarters_quantity_newitem_field.getText()));
pstm.execute();
JOptionPane.showMessageDialog(rootPane,"item has been registered");
还要确保pstm不用于另一个
prepareStatement
使用相同方法或其他方法。每个
prepareStatement
都应该有单独的变量名来设置参数值

query="INSERT INTO paint_inventory(ID,Name,type,gallons,quarters) VALUES(?,?,?,?,?)";
con.prepareStatement(query);
pstm.setInt(1,Integer.parseInt(itemID_newitem_field.getText()));
pstm.setString(2,name_newitem_field.getText());
pstm.setString(3,type_newitem_field.getText());
pstm.setInt(4,Integer.parseInt(gallons_quantity_newitem_field.getText()));
pstm.setInt(5,Integer.parseInt(quarters_quantity_newitem_field.getText()));
pstm.execute();
JOptionPane.showMessageDialog(rootPane,"item has been registered");

谢谢兄弟…我在用pstm做另一个准备声明…现在它工作得很好…非常感谢bro@nabeel如果它解决了你的问题,你可以接受