PreparedStatement 查询将数据插入 table 中的特定列

PreparedStatement query to insert data into specific columns in a table

我正在尝试将数据插入 table 的特定列(第 5 列和第 6 列)。 我的PreparedStatement代码如下:

PreparedStatement pst1  =  connection.prepareStatement("insert into CustomerPayment (End_Time,Paid) values (?,?) where PC_Used ='"+cmbpcname.getSelectedItem().toString()+"'");  
pst1.setString(5,lblendtime.getText());
pst1.setString(6,lblamount.getText().substring(3,5));
pst1.execute();

这个查询对吗?我收到一个错误 运行 该查询。任何建议都会有很大帮助。

索引指的是您声明中的位置,而不是 table。所以,

pst1.setString(1,lblendtime.getText()); 
pst1.setString(2,lblamount.getText().substring(3,5));

应该可以。

PreparedStatement pst1  =  connection.prepareStatement("Update CustomerPayment SET End_Time= ? , Paid = ? where PC_Used ='"+cmbpcname.getSelectedItem()+"'");  
            pst1.setString(1,lblendtime.getText());
            pst1.setString(2,lblamount.getText().substring(3,5));
            pst1.executeUpdate();