I am running on a postgresql server version 9.6, and I am using psql.
I am trying to write a script that automatically imports a bunch of CSV files. The requirements are that it it is a single SQL script that a user can run that does not have access to the server itself.
This means that the copy command results in a permissions denied error. So I have to use the \copy command.
This all works fine and dandy, but the script now contains a lot of hard coded directory names.
This is the basic code that I am trying:
\set test '\'' :in_dir /parcel.csv '\''; select :test ; \copy temp_table from :test with delimiter ',' quote '"' csv;
the result is a
psql:d:/test.sql:20: :test: No such file or directory
I've tried moving it to a function with an 'execute format' statement, but \copy does not work there. A regular copy results in a permission denied.
Is there any way to make the directory parameterized?