Ich versuche, den Befehl CREATE TABLE in Postgresql zu erstellen. Wenn ich nach dem Erstellen einer Tabelle den Tabellennamen TABLE eingebe , funktioniert dies.
Aber ich Punch in \ d Tabellennamen , halte ich unten einen Fehler.
ERROR: column c.relhasoids does not exist
LINE 1: ...riggers, c.relrowsecurity, c.relforcerowsecurity, c.relhasoi...
Ich habe versucht, mit dem Tabellennamen DROP DATABASE eine Datenbank neu zu erstellen und eine Tabelle mehrmals neu zu erstellen. Aber es hat nicht funktioniert.
Anregungen wäre dankbar! Vielen Dank.
postgresql
Nao
quelle
quelle
Antworten:
Ich kann Ihren Fehler reproduzieren, wenn ich Postgres v.12 und einen älteren Client (v.11 oder früher) verwende:
Dies liegt daran, dass in Version 12 Tabellen-OIDs nicht mehr als spezielle Spalten behandelt werden und die
relhasoids
Spalte daher nicht mehr erforderlich ist. Stellen Sie sicher, dass Sie einepsql
Binärdatei der Version 12 verwenden, damit dieser Fehler nicht auftritt.Möglicherweise verwenden Sie nicht unbedingt. Die
psql
allgemeinere Antwort lautet daher, sicherzustellen, dass Sie einen kompatiblen Client verwenden.quelle
Für alle, die Postgres als Docker- Container ausführen :
Anstatt psql vom Host aus auszuführen, führen Sie es aus dem Container heraus aus, z
Das Postgres- Image wird immer mit der entsprechenden - und daher immer aktualisierten - Version von psql geliefert, sodass Sie sich keine Sorgen machen müssen, dass die richtige Version auf dem Hostcomputer installiert ist.
quelle
Ich hatte dieses Problem heute, konnte aufgrund dessen nicht weiterarbeiten, seltsamerweise funktioniert der Anwendungscode einwandfrei.
Später wurde festgestellt, dass dieses Problem nur auftritt, wenn ich den OmniDb-Client verwende, mit dem ich eine Verbindung zur Datenbank herstelle.
Ich habe den Client auf Standard-pgAdmin 4 umgestellt, das mit der Postgres-Installation geliefert wird. Das Problem tritt nicht mehr auf. PgAdmin 4. Link: https://www.pgadmin.org/download/pgadmin-4-windows/
Es ist möglich, dass der OmniDb-Client älter ist, aber keine Zeit für die Fehlerbehebung, wenn Sie pgAdmin 4 verwenden.
Ich hoffe, das hilft.
quelle
Ich hatte heute auch das gleiche Problem. In meinem Fall wurde das Problem behoben, als ich die Version 12 löschte und die Version 11 installierte. Scheint, dass v12 einige Funktionen hat, die entlang der anderen Spalten erstellt werden müssen.
quelle
psql
von Ihrer Postgres 11-Installation aus eine Verbindung zu Postgres 12 hergestellt - Sie sollten diespsql
für Postgres 12 verwendet habenIch hatte das gleiche Problem. Aber ich habe die Lösung gefunden, indem ich den neuesten Build am 14.10.2019 heruntergeladen habe. Folgen Sie dem Link: https://postbird.paxa.kuber.host/2019_10_14.06_42-master-7a9e949
Ich hoffe, es hilft
quelle