博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

postgreSql 存储过程 实例

Posted on 2014-02-26 11:37  钟悍  阅读(7502)  评论(0编辑  收藏  举报
create or replace function setPassengerType(num varchar) returns varchar as
    $$
    declare
        sql varchar;
        str varchar;
        re record;
    begin
	str='';
        sql = 'select passenger_type from tops_order.passenger where flight_order_item_id=''' || num ||'''';
        for re in execute sql loop
           if str='' then 
               str = re.passenger_type;
           else
               str = str ||','|| re.passenger_type;
           end if;
        end loop;
        sql = 'update tops_order.flight_order_item set passenger_type=''' || str ||''' where id=''' || num ||'''';
        RAISE NOTICE 'i want to print %', sql;
        execute sql;
        return str;
    end
    $$
language plpgsql;

select setPassengerType('140107232230103') --执行存储过程