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

La configuración del esquema en PostgreSQL JDBC no parece funcionar

user es una función integrada (y una palabra clave). Así que realmente no puedes usarlo como nombre de tabla:

psql (10.4)
Type "help" for help.

postgres=# select user;
   user
----------
 postgres
(1 row)

postgres=# select * from user;
   user
----------
 postgres
(1 row)

Y debido a que es una función, no tiene una columna name .

postgres=# select name from user;
ERROR:  column "name" does not exist
LINE 1: select name from user;
               ^
postgres=#

Si califica la tabla, entonces está claro que no está haciendo referencia a la función, sino a la tabla.

Siempre puede calificar el nombre de la tabla con el esquema o usar comillas dobles:select name from "user"; o simplemente busque un nombre de tabla que no entre en conflicto con las funciones integradas.