no schema has been selected to create in
Ricevi questo errore quando il tuo search_path
setting non ha una prima voce valida (in genere vuota). Postgres non sa in quale schema creare la tabella.
Correggi il tuo search_path
impostazione o nomi di oggetti qualificati dallo schema (come:public.users
). Ma correggi il tuo search_path
in qualsiasi Astuccio.
Dettagli:
- In che modo search_path influenza la risoluzione dell'identificatore e lo "schema corrente"
Ho trovato il file creato da pg_dump
(sotto postgres 10.7) aveva
SELECT pg_catalog.set_config('search_path', '', false);
vicino alla sua sommità. Quindi, durante l'importazione del file, ha manipolato il percorso di ricerca, che è rimasto per tutta la sessione corrente.
Commentare quella riga (e avviare una nuova sessione) ha risolto il problema.
Questo problema è già stato risolto:https://dba.stackexchange.com/a/275116/114247
La soluzione è:
grant usage on schema public to public;
grant create on schema public to public;