plpgsql and escape

Started by Nonameover 23 years ago2 messagesgeneral
Jump to latest
#1Noname
darthxiong@libero.it

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.

#2Richard Huxton
dev@archonet.com
In reply to: Noname (#1)
Re: plpgsql and escape

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