I’m new to postgreSQL and I have a simple question:
I’m trying to create a simple script that creates a DB so I can later call it like this:
psql -f createDB.sql
I want the script to call other scripts (separate ones for creating tables, adding constraints, functions etc), like this:
\i script1.sql \i script2.sql
It works fine provided that createDB.sql is in the same dir.
But if I move script2 to a directory under the one with createDB, and modify the createDB so it looks like this:
\i script1.sql \i somedir\script2.sql
I get an error:
psql:createDB.sql:2: somedir: Permission denied
I’m using Postgres Plus 8.3 for windows, default postgres user.
EDIT:
Silly me, unix slashes solved the problem.
Postgres started on Linux/Unix. I suspect that reversing the slash with fix it.
If you need to fully qualify something
If that doesn’t fix it, my next guess would be you need to escape the backslash.