checking schema present or not by passing schema name as parameter
i am checking if schema present or not and passing schema name dynamically
but it's trowing an error :
CREATE OR REPLACE FUNCTION chkschema(schemaname text)
RETURNS boolean AS
$BODY$
DECLARE
i boolean;
BEGIN
EXECUTE 'SELECT exists(select schema_name FROM information_schema.schemata
WHERE schema_name = '||quote_ident(schemaname)||')'
INTO i ;
IF i THEN
return i;
else
return i;
end if;
end;
$BODY$
LANGUAGE plpgsql
ERROR: column "secc_master" does not exist
LINE 1: ...M information_schema.schemata WHERE schema_name = secc_maste...
^
--
View this message in context: http://postgresql.1045698.n5.nabble.com/checking-schema-present-or-not-by-passing-schema-name-as-parameter-tp5758131.html
Sent from the PostgreSQL - general mailing list archive at Nabble.com.
--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general
Hello
2013/6/6 anushasrivastava03 <anushasrivastava03@yahoo.co.in>:
i am checking if schema present or not and passing schema name dynamically
but it's trowing an error :CREATE OR REPLACE FUNCTION chkschema(schemaname text)
RETURNS boolean AS
$BODY$
DECLARE
i boolean;
BEGINEXECUTE 'SELECT exists(select schema_name FROM information_schema.schemata
WHERE schema_name = '||quote_ident(schemaname)||')'
INTO i ;
why do you use EXEC there
do only
BEGIN
IF EXISTS(SELECT * FROM information_schema.schemata WHERE
schema_name = 'secc_master'_ THEN
...
ELSE
...
END IF;
IF i THEN
return i;
elsereturn i;
end if;end;
$BODY$
LANGUAGE plpgsqlERROR: column "secc_master" does not exist
LINE 1: ...M information_schema.schemata WHERE schema_name = secc_maste...
you have to use quote_literal function there, not quote_ident.
Regards
Pavel
^
--
View this message in context: http://postgresql.1045698.n5.nabble.com/checking-schema-present-or-not-by-passing-schema-name-as-parameter-tp5758131.html
Sent from the PostgreSQL - general mailing list archive at Nabble.com.--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general
--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general
thanks 'quote_literal' worked :)
--
View this message in context: http://postgresql.1045698.n5.nabble.com/checking-schema-present-or-not-by-passing-schema-name-as-parameter-tp5758131p5758251.html
Sent from the PostgreSQL - general mailing list archive at Nabble.com.
--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general