sql >> Databáze >  >> RDS >> PostgreSQL

Jak opravit CHYBU:sloupec c.relhasoids v Postgresu neexistuje?

Mohu reprodukovat vaši chybu, pokud používám Postgres v.12 a staršího klienta (v.11 nebo starší):

[[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=# 

Je to proto, že ve verzi 12 se s OID tabulek již nezachází jako se speciálními sloupci, a tedy s relhasoids sloupec již není nutný. Ujistěte se prosím, že používáte verzi psql v. 12 binární, takže se s touto chybou nesetkáte.

Možná nemusíte nutně používat psql , takže obecnější odpovědí je ujistit se, že používáte kompatibilního klienta.



  1. Jak v SQL vybrat horní 2 řádky pro každou skupinu

  2. Potřebujete pomoc s výpočtem pomocí dvou sad dat pomocí Expression SSRS

  3. Těžební plány :Nejen pro mezipaměť plánů

  4. Získání a instalace Microsoft SQL Server Management Studio