Tables not created in proper schema
Hello All,
I am trying to create databse with script.
I run this script from root prompt with command
$ su - postgres -c 'path to script.sql'
In the script I follow following steps
1) create user xyz
2) create database xyz -O xyz
3) create schema xyz
4) {PG_PATH}/psql -d xyz -U xyz -f /usr/local/pgsql/QS/QS_100_2_Create_Table.sql -q -1
But still the tables are created in the public schema and not in xyz schema
Postgresql.conf entry:
serach path =' "$user",public'
tried with setting :
search path = ' xyz,"$user",public'
Same result
OR
search path = ' "$user",xyz,public'
Same result
OR
search path = ' "$user",xyz'
Error:no schema has been selected to create in
Please suggest me the corrective action.
Thanks In advance
Ashish...
am Mon, dem 02.07.2007, um 11:13:54 +0530 mailte Ashish Karalkar folgendes:
Hello All,
I am trying to create databse with script.
I run this script from root prompt with command$ su - postgres -c 'path to script.sql'
In the script I follow following steps
1) create user xyz
2) create database xyz -O xyz
3) create schema xyz
ALTER USER xyz SET SEARCH_PATH = ' ... ';
or set the search_path at the beginning of your sql-file.
Andreas
--
Andreas Kretschmer
Kontakt: Heynitz: 035242/47150, D1: 0160/7141639 (mehr: -> Header)
GnuPG-ID: 0x3FFF606C, privat 0x7F4584DA http://wwwkeys.de.pgp.net
Thanks for your replay.
I think the problem is with schema not being recognised.
following are the line from sql script:(This script is run as a postgres
user with password authntication from .pgpass file)
${PG_PATH}/createuser qsweb -S -d -R -l -P -E -q -U postgres
${PG_PATH}/createdb -E UTF8 -O qsweb -U postgres qsweb
${PG_PATH}/createlang -U postgres -d qsweb plpgsql
${PG_PATH}/psql -d qsweb --command "CREATE SCHEMA qsweb"
${PG_PATH}/psql -d qsweb --command "ALTER SCHEMA qsweb OWNER TO qsweb"
${PG_PATH}/psql --command "ALTER USER qsweb SET SEARCH_PATH='qsweb'"
The output is right till alter schema but then while setting the search
path it says NOTICE:schema "qsweb" does not exist.
can you suggest what is going wrong
Thanks in advance
Ashish...
----- Original Message -----
From: "A. Kretschmer" <andreas.kretschmer@schollglas.com>
To: <pgsql-general@postgresql.org>
Sent: Monday, July 02, 2007 2:28 PM
Subject: Re: [GENERAL] Tables not created in proper schema
Show quoted text
am Mon, dem 02.07.2007, um 11:13:54 +0530 mailte Ashish Karalkar
folgendes:Hello All,
I am trying to create databse with script.
I run this script from root prompt with command$ su - postgres -c 'path to script.sql'
In the script I follow following steps
1) create user xyz
2) create database xyz -O xyz
3) create schema xyzALTER USER xyz SET SEARCH_PATH = ' ... ';
or set the search_path at the beginning of your sql-file.
Andreas
--
Andreas Kretschmer
Kontakt: Heynitz: 035242/47150, D1: 0160/7141639 (mehr: -> Header)
GnuPG-ID: 0x3FFF606C, privat 0x7F4584DA http://wwwkeys.de.pgp.net---------------------------(end of broadcast)---------------------------
TIP 3: Have you checked our extensive FAQ?
Ashish Karalkar wrote:
${PG_PATH}/psql -d qsweb --command "CREATE SCHEMA qsweb"
${PG_PATH}/psql -d qsweb --command "ALTER SCHEMA qsweb OWNER TO qsweb"
${PG_PATH}/psql --command "ALTER USER qsweb SET SEARCH_PATH='qsweb'"
The output is right till alter schema but then while setting
the search path it says NOTICE:schema "qsweb" does not exist.
Hardly surprising, as you forgot '-d qsweb' in the last command.
Yours,
Laurenz Albe