Попробуйте использовать другой оператор, поскольку st.executeUpdate(query2);
закроет ResultSet, и вы получите JdbcSQLException
, однако вы игнорируете все исключения в своем коде. Вы должны по крайней мере поместить ex.printStackTrace()
в свой блок catch, чтобы вы могли видеть, что происходит.
Несмотря на то, что в коде многое можно улучшить, функционально это должно работать для вас,
Button Back = (Button) findViewById(R.id.btn_back);
Back.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
connectionClass = new ConnectionClass();
Connection con = connectionClass.CONN();
try {
final String PIC = lblname.getText().toString();
String dates = new SimpleDateFormat("MM/dd/yyyy", Locale.ENGLISH).format(Calendar.getInstance().getTime());
String check = "Select * from BRTR where work_date='" + dates + "' and end_break is null";
Statement st = con.createStatement();
rs = st.executeQuery(check);
while (rs.next()) {
String PF_NO = rs.getString("PF_No");
String query2 = "Update WORKTR set status ='" + b_status + "' where Start_date='" + dates + "' and Pf_no='" + PF_NO + "' and Scan_by='" + PIC + "' and status='" + a_status + "'";
con.createStatement().executeUpdate(query2);
}
} catch (Exception ex)
{
ex.printStackTrace(); // now we can see what is going wrong
}
onBackPressed();
}
});