Hi, I want to create a function to update my table (flag='9') and insert new record (flag='0') with the rfidnumber specified in a parameter.
This parameter may have several value seperated by space (ie. 11 22 33 44) CREATE OR REPLACE FUNCTION public.fcreate_rfid ( znumber varchar ) RETURNS boolean AS $body$ BEGIN --update old record which has the same rfid number and flag='0' if exists update tblrfid set flag='9' where flag='0' and rfidnumber in (znumber); -- generate new record insert into tblrfid(tanggal, flag, rfidnumber) select localtimestamp, '0', regexp_split_to_table(znumber, ' '); return true; END; $body$ LANGUAGE 'plpgsql'; when i called this function using command : select fcreate_rfid('11 22 33 44'); This function fail to update the old record, but success to insert the new record. Please help me how to fixed this problem. I know the problem is the update command, but i don't know the correct it. Googling anywhere didn't find a solution. Thank you <http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> Virus-free. www.avg.com <http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> <#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>