Ho creato la tabella donor
nello schema reference
secondo:
CREATE TABLE reference.donor (
donor_code smallint PRIMARY KEY,
donor_name character varying NOT NULL,
donor_type smallint REFERENCES reference.donor_type (type_id),
alpha_2_code char(2) REFERENCES reference.iso_3166_1 (alpha_2_code)
);
Ho popolato la tabella secondo:
INSERT INTO reference.donor (donor_code, donor_name, donor_type, alpha_2_code)
SELECT donor_code, donor_name, donor_type, alpha_2_code
FROM reference.donor_template;
Quando corro:
\dt+ reference.*
all'interno di psql vedo la reference.donor
tabella:
List of relations
Schema | Name | Type | Owner | Size | Description
-----------+----------------+-------+----------+-------+-------------
reference | donor | table | postgres | 16 kB |
reference | donor_template | table | postgres | 16 kB |
reference | donor_type | table | postgres | 16 kB |
reference | iso_3166_1 | table | postgres | 48 kB |
(4 rows)
Ma quando corro \dt+ donor*
(o \dt(+)
) non vedo la reference.donor
tabella:
List of relations
Schema | Name | Type | Owner | Size | Description
-----------+----------------+-------+----------+-------+-------------
oecd_cl | donor | table | postgres | 16 kB |
reference | donor_template | table | postgres | 16 kB |
reference | donor_type | table | postgres | 16 kB |
(3 rows)
Perché posso vedere la reference.donor
tabella solo se corro \dt+ reference.*
o \dt+ *.donor
?
Mi aspettavo \dt
(o \dt+
) di visualizzarlo, ma non lo fa.
Il mio search_path
include lo schema reference
e l'utente postgres
ha tutte le autorizzazioni sullo schema reference
e tutte le tabelle nello schema secondo:
GRANT ALL ON ALL TABLES IN SCHEMA reference TO postgres;
Giusto per chiarire, ho due donor
tabelle, ma sono in due schemi diversi, ad esempio, oecd.donor
& reference.donor
. (Riesco a vedere oecd.donor
senza problemi quando uso \dt(+)
all'interno di psql).
search_path
primo e senza che io conosca in anticipo i nomi di tabella / schema? O sono io meglio di interrogare ilinformation schema
ad esempio ,:SELECT table_schema, table_name FROM information_schema.tables ORDER BY table_schema, table_name;
?