Bonjour,
Je découvre l'outil psql et bloque sur une manipulation d'import.
Je souhaiterais faire exécuter par psql un script sql de création de table et d'insertion de données dans ces tables.
Seulement, je ne voudrais pas que ces tables soient créées dans le schéma 'public' par défaut mais dans un autre schéma (appelons le 'schema_test' par exemple). La variable 'search_path' semble être celle qui contient le nom du schéma 'actif' mais comment faire pour changer sa valeur avant exécution du script ?
1ère méthode : Dans les options d'utilisation de psql dans une ligne de commande, je ne vois rien permettant de préciser un nom de schéma. L'option -v permet de modifier la valeur d'une variable, je tape donc :
psql -d mabase -U monuser -v search_path=schema_test -f monfichierscript
Le script s'exécute mais les tables sont créées dans le schéma 'public'...
2ème méthode : Si je me connecte à ma base via psql j'obtiens une invite de commande du type mabase=#
J'ai alors modifié la valeur de la variable search_path :
mabase=>\set search_path to schema_test
Puis lancé l'exécution de mon fichier script :
mabase=#\i fichier_script.sql
Le script s'exécute mais toujours dans le schéma 'public' de ma base...
Quelqu'un pourrait-il m'indiquer la méthodologie pour spécifier un autre schéma ?
Merci.
Partager