私の最初の推測は、あなたが2つを扱っているということです さまざまなテーブル 名前付きbg 。スキーマtigerに1つ 、およびtigerの前にある非公開スキーマの別の1つ search_pathで -またはtigerがsearch_pathにありません まったく。
bgという名前のすべてのテーブルを検索します (大文字と小文字を区別)現在のデータベースのすべてのスキーマ:
SELECT * FROM pg_tables WHERE tablename = 'bg';
search_pathを理解するには 設定:
Postgres DBクラスターの構造を理解するには:
そうでない場合は、インデックスが破損している可能性があります。まず、 REINDEXを試してみます。
:
REINDEX bg_pkey;
継承!
追加したテーブル定義に表示されます:
bg_id ='470370111002'の行が疑われます 実際には子テーブルに住んでいます tiger_data.tn_bg 。ただし、FK制約は親テーブルを参照します 。 FK制約は継承されません。
クエリを実行すると何が得られますか:
SELECT * FROM ONLY bg WHERE bg_id ='470370111002' 私の仮説が成り立つ場合、行がない 。 章警告強い> マニュアルの継承ページ 。
関連: