Quando si tratta di Postgresql e nomi di entità (tabelle, colonne, ecc.) con lettere MAIUSCOLE, è necessario "sfuggire" alla parola inserendola in "". Si prega di fare riferimento alla documentazione su questo particolare argomento. Quindi, il tuo esempio sarebbe scritto in questo modo:
String stm = "DELETE FROM hostdetails WHERE \"MAC\" = 'kzhdf'";
In una nota a margine, considerando che stai utilizzando istruzioni preparate, non dovresti impostare il valore direttamente nella tua istruzione SQL.
con = DriverManager.getConnection(url, user, password);
String stm = "DELETE FROM hostdetails WHERE \"MAC\" = ?";
pst = con.prepareStatement(stm);
pst.setString(1, "kzhdf");
pst.executeUpdate();