Sie können so etwas versuchen. Lass es mich wissen, wenn das funktioniert.
public double calRoomCharges(int cusId)
{
String totRoom = "";
double totalCharge = 0.0;
try
{
//Get Rates
String sql="SELECT nights FROM reservation where cus_id ='"+cusId+"'";
pst=conn.prepareStatement(sql);
rs=pst.executeQuery();
int roomRates = 0;
if(!rs.next())
{
//handle no result
}
else
{
roomRates = rs.getInt("nights") ;
totalCharge = roomRates; // calculate total charge
String totRoom = String.valueOf(totalCharge);
rc.setText(totRoom);
}
}
catch(Exception e){
System.out.prtintln(e.getMessage());
}
return totalCharge;
}
Verwenden Sie nicht Java 7+? Wenn ja, sollten Sie eine try-with-resources-Anweisung verwenden (sowohl 'PreparedStatement' als auch' ResultSet' implementieren 'AutoCloseable'); Hier schließen Sie keine Ressourcen ... Sie geben auch ein 'double' zurück und' totRoom' ist ein 'String'. Das wird nicht funktionieren ... Und schließlich ist ein leerer "Fangblock" eine sehr, sehr schlechte Idee. – fge
Sie können die Variable totRoom vor dem Versuch in try setzen und dann nach dem Catch zurückgeben. – Yan
Ich sage nur, dass Ihre SQL-Anweisung weit offen für SQL Injection ... – ryekayo