plpy prepare problem

Поиск
Список
Период
Сортировка
От jlowery
Тема plpy prepare problem
Дата
Msg-id 1175443770.465127.269920@l77g2000hsb.googlegroups.com
обсуждение исходный текст
Ответы Re: plpy prepare problem
Список pgsql-general
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']])

    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.


В списке pgsql-general по дате отправления:

Предыдущее
От: "William Gray"
Дата:
Сообщение: Re: Some encoding trouble via libpq
Следующее
От: "MaDog"
Дата:
Сообщение: PlPg/SQL