From: | Adrian Klaver <aklaver(at)comcast(dot)net> |
---|---|
To: | pgsql-general(at)postgresql(dot)org |
Cc: | "jlowery" <jslowery(at)gmail(dot)com> |
Subject: | Re: plpy prepare problem |
Date: | 2007-04-03 12:54:27 |
Message-ID: | 200704030554.27774.aklaver@comcast.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On Sunday 01 April 2007 9:09 am, jlowery wrote:
> I'm having a bit of a problem getting plpython's prepare to work
> properly:
>
> CREATE OR REPLACE FUNCTION batch_item_reversal(b batch_item)
> RETURNS "varchar" AS
> $BODY$
>
> if b['reversal_flag'] == 'Y':
> sql = plpy.prepare("""
> SELECT batch_item_number
> FROM batch_item
> WHERE patient_ssn=$1 AND
> patient_dob=$1 AND
> claim_number=$1 AND
> batch_item_number != $1""",
> ["varchar", "date", "varchar", "varchar"])
> refs = plpy.execute(sql, [
> b['patient_ssn'],
> b['patient_dob'],
> b['claim_number'],
> b['batch_item_number']])
You need to have unique numbers for the variables.
patient_ssn=$1
patient_dob=$2
etc
>
> refs2 = plpy.execute("""
> SELECT batch_item_number
> FROM batch_item
> WHERE patient_ssn='%s' AND
> patient_dob='%s' AND
> claim_number='%s' AND
> batch_item_number != '%s'
> """ % (b['patient_ssn'],
> b['patient_dob'],
> b['claim_number'],
> b['batch_item_number']))
>
> if refs:
> return refs[0]["batch_item_number"]
> else:
> return "ERROR"
> else:
> return None
>
> $BODY$
> LANGUAGE 'plpythonu' VOLATILE;
>
>
> Here, refs2 returns the proper data, but refs always returns nothing.
> I have a feeling it has something to do with the type list, I tried
> all "text"'s but to no avail.
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 4: Have you searched our list archives?
>
> http://archives.postgresql.org/
--
Adrian Klaver
aklaver(at)comcast(dot)net
From | Date | Subject | |
---|---|---|---|
Next Message | Thorsten Kraus | 2007-04-03 12:58:28 | Re: Webappication and PostgreSQL login roles |
Previous Message | Michael Meskes | 2007-04-03 12:46:14 | Re: ECPG: inserting NULL values when using prepared statements |