PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Postgres ne peut pas ouvrir le fichier CSV pour un accès en lecture :autorisation refusée

J'ai déjà rencontré ce problème auparavant, et plutôt que de jockey avec des autorisations tout le temps, j'importe simplement depuis STDIN.

Cela accomplirait ce que vous voulez (mais pas exactement comme vous le souhaitez), mais je pense que c'est beaucoup moins fastidieux et sujet aux erreurs. Essayez :

cat /pgsrc/IP2LOCATION-LITE-DB9.CSV | psql -c "COPY ip2location_db1 FROM STDIN (FORMAT CSV);"

Cela implique que vous exécutez la requête à partir d'un script shell ou quelque chose, mais pour l'implémenter dans l'autre sens, vous devez incorporer le changement des autorisations avec un script shell ou quelque chose.

(Aussi, selon la documentation , le guillemet par défaut est le guillemet double, vous n'avez donc pas besoin de spécifier le guillemet.)