Oto ładna tabela zastrzeżonych słów w PostgreSQL:
http://www.postgresql.org/docs/current/static/sql-keywords-appendix.html
Prawdopodobnie najlepiej jest po prostu unikać używania tych słów jako nazw tabel lub kolumn.
Alternatywą jest jednak ujęcie identyfikatora w podwójnych cudzysłowach, np.:
CREATE TABLE IF NOT EXISTS apiss (
skey TEXT,
time INTEGER,
"user" TEXT,
ip TEXT);
Dodatkowo Postgres rezerwuje nazwy kolumn systemowych do użytku wewnętrznego w każdej tabeli:„Każda tabela ma kilka kolumn systemowych, które są domyślnie zdefiniowane przez system. Dlatego te nazwy nie mogą być używane jako nazwy kolumn zdefiniowanych przez użytkownika”.
https://www.postgresql.org/docs/current/ddl-system-columns.html