int v1 = Integer.parseInt(lbl_READING_NUMBER.getText());
int n = Integer.parseInt(jLabel_CUBIC_METER.getText());
int x = 0;
double point = .11;
double ans = 0;
if(n<10){
for(n=0;x<4;x++){
ans = x*point*100;
}
}
try{
if(n<10){
for(n=0;x<4;x++){
ans = x*point*100;
}
}
String sql ="UPDATE reading set Amount=? where Reading_Number=?";
ps = conn.prepareStatement(sql);
ps.setDouble(1, ans);
ps.setInt(2, v1);
rs =ps.executeUpdate(); //This line gives me error saying:
"Incompatible types: int cannot be converted to ResultSet"
}catch(Exception e){
JOptionPane.showMessageDialog(null, e);
}
我想知道这个错误的原因是什么以及我将如何修复它。此代码也是我在水费单系统中计算立方米的方法
答案 0 :(得分:1)
错误消息是问题的一个很好的指标 - executeUpdate
返回一个int值而不是ResultSet
int rows = ps.executeUpdate();
答案 1 :(得分:1)
executeUpdate
返回一个int值,表示更新了多少行。使用executeQuery
接收ResultSet
。
样品
ps.executeUpdate(); // This will update the database and return the number of rows which were affected.
rs = ps.executeQuery("SELECT * etc..."); // This you use when you want to retrieve a ResultSet