Я использую Postgresql9.2 и SQLAlchemy0.8. У меня есть хранимая процедура в базе данных, у которой много параметров, и я хочу, чтобы они использовались с помощью точечной нотации. Но до сих пор я терпел неудачу. Ниже приведен код моего кода.SQLAlchemy получает выходные параметры из хранимой процедуры postgresql
Пример, чтобы показать, что я делаю, выглядит следующим образом.
CREATE OR REPLACE FUNCTION stored_proc_name(IN in_user_id bigint, IN in_amount bigint,
OUT pout_one bigint, OUT pout_two bigint)
RETURNS record AS
$BODY$
begin
select count(*) as AliasOne into pout_one from tabe_names where conditions;
select user_name as AliasTwo into pout_two from table_name where condition;
end;
$BODY$
LANGUAGE plpgsql VOLATILE
COST 100;
ALTER FUNCTION stored_proc_name(bigint, bigint)
OWNER TO postgres;
Мой фрагмент кода выглядит следующим образом:
#session object from sessionmaker
result_obj = session.execute(func.stored_proc_name(user_id, amount))
print result_obj.fetechall()
#The above print statement prints following on the console.
>> [('(1,100)',)]
Очевидно, что выше результата получает строку. Я хочу что-то вроде result_obj.pout_one
и использовать его в своем коде.
Есть ли способ его достижения. Фрагмент рабочего кода будет высоко оценен.
Большое спасибо!
Удивительный! Большое спасибо. Необходимо добавить 'Column type'. – user990150