sql >> データベース >  >> RDS >> PostgreSQL

エラーを修正する方法:列c.relhasoidsはPostgresに存在しませんか?

    Postgres v.12とそれ以前のクライアント(v.11以前)を使用している場合、エラーを再現できます:

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

    これは、v。12では、テーブルOIDが特別な列として扱われなくなったため、relhasoids 列はもう必要ありません。 v。12psqlを使用していることを確認してください バイナリなので、このエラーは発生しません。

    必ずしもpsqlを使用しているとは限りません。 、したがって、ここでのより一般的な答えは、互換性のあるクライアントを使用していることを確認することです。



    1. SQLを使用してMySQLデータベースでテキストを検索および置換する方法

    2. SQL Serverデータのスクリプトを取得する方法は?

    3. XML_LOAD()を使用してXMLファイルをMySQLデータベーステーブルにインポートする方法。働き

    4. SelectSUMクエリはnullを返します。 0を返す必要があります