Обсуждение: plpgsql and escape
hi all!
i'm trying to do this ( converting unix time to human readable time in another table )
create function align_vs() returns opaque as
'
declare
line_vs vs%ROWTYPE;
itime vs.step_time%TYPE;
begin
itime := to_char( timestamp ''epoch'' + interval ''NEW.step_time seconds'', ''YYYY-MM-DD HH24:MI:SS'' );
update vs set w_id = NEW.w_id, step_id = %NEW.step_id, step_time = itime where w_id = NEW.w_id;
return null;
end;
' language plpgsql;
the double ' around NEW.step_time blocks its interpolation. which is the correct escaping sintax here?
TIA
Ivan
--
There is no such thing as a problem without a gift for you in its hands.
On Monday 21 Oct 2002 3:00 pm, darthxiong@libero.it wrote: > hi all! > i'm trying to do this ( converting unix time to human readable time in > another table ) > > create function align_vs() returns opaque as > ' > declare > line_vs vs%ROWTYPE; > itime vs.step_time%TYPE; > begin > > itime := to_char( timestamp ''epoch'' + interval ''NEW.step_time > seconds'', ''YYYY-MM-DD HH24:MI:SS'' ); update vs set w_id = NEW.w_id, > the double ' around NEW.step_time blocks its interpolation. which is the > correct escaping sintax here? Try (NEW.step_time || '' seconds'') - that should do it. If not, try casting step_time to text first. -- Richard Huxton