We want to implement a mechanism by which if any database function is created or modified in one database, then the same should automatically get done in another (1 or more) database(s).
It seems triggers on system catalogs like pg_proc are not allowed. Is there any way in postgres to do this, by some other way?
Thanks!
atul
From: pgsql-admin-owner@postgresql.org [mailto:pgsql-admin-owner@postgresql.org] On Behalf Of Atul Chojar
Sent: Thursday, May 28, 2009 2:06 PM
To: 'Vyacheslav Kalinin'
Cc: pgsql-admin@postgresql.org; 'Andy Yoder'
Subject: Re: [ADMIN] How to pass parameters into a sql script ?
Thanks - with quoting, the 2nd select (select count(*) from prod_debit_payments_unapplied where when_received = :p_date;) works.
Thanks!
atul
From: Vyacheslav Kalinin [mailto:vka@mgcp.com]
Sent: Thursday, May 28, 2009 12:10 PM
To: Atul Chojar
Cc: pgsql-admin@postgresql.org
Subject: Re: [ADMIN] How to pass parameters into a sql script ?
Looks like quoting issue.
Try this one:
$ psql -d us_audit -e -1 -v p_date=\'20081023\' -f chk_param.sql
select count(*) from prod_debit_payments_unapplied where when_received = (select :p_date::char(8));
or even
select count(*) from prod_debit_payments_unapplied where when_received = :p_date;
On Thu, May 28, 2009 at 6:57 PM, Atul Chojar <achojar@airfacts.com> wrote:
We are unable to pass parameters into any sql script. Could anyone look at the test below and give any suggestions? PostgreSQL version is 8.2.7, running on Linux.
Test Script
========
$ cat chk_param.sql
select ''''||:p_date::char(8)||'''';
select count(*) from prod_debit_payments_unapplied where when_received = (select ''''||:p_date::char(8)||'''');
select count(*) from prod_debit_payments_unapplied where when_received = '20081023';
...
No virus found in this incoming message.
Checked by AVG - www.avg.com
Version: 8.5.339 / Virus Database: 270.12.40/2135 - Release Date: 05/28/09 08:10:00
No virus found in this incoming message.
Checked by AVG - www.avg.com
Version: 8.5.339 / Virus Database: 270.12.40/2135 - Release Date: 05/28/09 08:10:00