sql >> Databasteknik >  >> RDS >> PostgreSQL

Hur fixar man FEL:kolumnen c.relhasoids finns inte i Postgres?

Jag kan återskapa ditt fel om jag använder Postgres v.12 och en äldre klient (v.11 eller tidigare):

[[email protected] /]# psql -h 172.17.0.3
psql (11.5, server 12.0)
WARNING: psql major version 11, server major version 12.
         Some psql features might not work.
Type "help" for help.

postgres=# create table mytable (id int, name text);
CREATE TABLE
postgres=# table mytable;
 id | name 
----+------
(0 rows)

postgres=# \d mytable;
ERROR:  column c.relhasoids does not exist
LINE 1: ...riggers, c.relrowsecurity, c.relforcerowsecurity, c.relhasoi...
                                                             ^
postgres=# 

Detta beror på att i v. 12 behandlas tabell OID inte längre som speciella kolumner, och därför relhasoids kolumn är inte längre nödvändig. Se till att du använder en v. 12 psql binär så att du inte stöter på det här felet.

Du kanske inte nödvändigtvis använder psql , så det mer allmänna svaret här är att se till att du använder en kompatibel klient.



  1. UNIX_TIMESTAMP() Exempel – MySQL

  2. 5 säkerhetsfördelar med molnbaserade databasövervakningslösningar

  3. Oracle SQL PIVOT-tabell

  4. Så här klusterar du dina ProxySQL-lastbalanserare