no schema has been selected to create in
Vous obtenez cette erreur lorsque votre search_path
paramètre n'a pas de première entrée valide (généralement vide). Postgres ne sait pas dans quel schéma créer la table.
Corrigez votre search_path
ou des noms d'objets qualifiés de schéma (comme :public.users
). Mais corrigez votre search_path
dans tout Cas.
Détails :
- Comment le search_path influence-t-il la résolution de l'identifiant et le "schéma actuel"
J'ai trouvé le fichier créé par pg_dump
(sous postgres 10.7) avaient
SELECT pg_catalog.set_config('search_path', '', false);
près du sommet de celui-ci. Ainsi, lors de l'importation du fichier, il a manipulé le chemin de recherche, qui a persisté tout au long de la session en cours.
Commenter cette ligne (et démarrer une nouvelle session) a résolu le problème.
Ce problème a déjà reçu une réponse :https://dba.stackexchange.com/a/275116/114247
Le correctif est :
grant usage on schema public to public;
grant create on schema public to public;