【发布时间】:2015-12-07 13:14:27
【问题描述】:
我有这样的代码
String sql_kode_kategori = "select kategori from data_kategori \n" +
"where kode_kategori = ?";
try{
pst = (PreparedStatement) koneksiMySQL.GetConnection().prepareStatement(sql_kode_kategori);
pst.setString(1, (String)cbKategori.getSelectedItem());
rst2 = pst.executeQuery();
rst2.next();
stat = (Statement) koneksiMySQL.GetConnection().createStatement();
String sql_insert = "INSERT INTO data_pasal VALUES ('"+jTPasal.getText() + "','"+jTIsi_Pasal.getText()+"'"
+ ",'"+jTHukuman.getText()+"','"+jTDenda.getText()+"','"+rst2.getString(1)+"')";
stat.executeUpdate(sql_insert);
javax.swing.JOptionPane.showMessageDialog(null, "Data CES Berhasil Ditambahkan");
ClearField();
TampilTabel();
}catch(Exception e){
JOptionPane.showMessageDialog(null, e);
}
我试图用 kategori 获取 kode_kategori 但出现该错误,请帮助我
【问题讨论】:
-
要做的第一件事:停止将值直接插入到您的 SQL 中。使用参数化 SQL,就像您已经为查询部分所做的那样。
-
如果 rst2.next() 返回 false,则 rst2.getString(1) 没有数据。您需要检查结果为 if(rst2.next()) {
-
你能给我一些源代码的例子吗?