PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Errore:la colonna non esiste

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();