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