sql >> Base de Datos >  >> RDS >> PostgreSQL

Error:la columna no existe

Cuando se trata de Postgresql y nombres de entidades (Tablas, Columnas, etc.) con letras MAYÚSCULAS, debe "escapar" la palabra colocándola en "". Consulte la documentación sobre este tema en particular. Entonces, su ejemplo se escribiría así:

String stm = "DELETE FROM hostdetails WHERE \"MAC\" = 'kzhdf'";

En una nota al margen, teniendo en cuenta que está utilizando declaraciones preparadas, no debe establecer el valor directamente en su declaración SQL.

con = DriverManager.getConnection(url, user, password);
String stm = "DELETE FROM hostdetails WHERE \"MAC\" = ?";
pst = con.prepareStatement(stm);
pst.setString(1, "kzhdf");
pst.executeUpdate();