user
är en inbyggd funktion (och ett nyckelord). Så du kan inte riktigt använda det som ett tabellnamn:
psql (10.4)
Type "help" for help.
postgres=# select user;
user
----------
postgres
(1 row)
postgres=# select * from user;
user
----------
postgres
(1 row)
Och eftersom det är en funktion har den ingen kolumn name
.
postgres=# select name from user;
ERROR: column "name" does not exist
LINE 1: select name from user;
^
postgres=#
Om du kvalificerar tabellen är det tydligt att du inte refererar till funktionen utan tabellen.
Du kan antingen alltid kvalificera tabellnamnet med schemat eller använda dubbla citattecken:select name from "user";
eller helt enkelt hitta ett tabellnamn som inte kolliderar med inbyggda funktioner.