where is this problem (trigger)

From: Theodore Petrosky <tedpet5(at)yahoo(dot)com>
To: postgres SQL <pgsql-sql(at)postgresql(dot)org>
Subject: where is this problem (trigger)
Date: 2004-05-12 17:57:50
Message-ID: 20040512175750.12624.qmail@web41006.mail.yahoo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

I fire this trigger whenever my client updates a row
in the db:

CREATE FUNCTION notify_jobinfo() RETURNS "trigger"
AS '
BEGIN
EXECUTE ''NOTIFY ''||TG_RELNAME||''_''||NEW.jobnumber;
RETURN NEW;
END
'
LANGUAGE plpgsql;

CREATE TRIGGER notify_jobinfo
AFTER UPDATE ON jobinfo
FOR EACH ROW
EXECUTE PROCEDURE notify_jobinfo();

CREATE TABLE jobinfo (
acode text,
jobnumber text DEFAULT
nextval('public.jobinfo_seq'::text),
creationdate date DEFAULT now(),
shortdescription text,
projectcode text,
holdnumber text,
insertioninfo text,
jobtitle text,
insertiondate text,
iscomplete boolean DEFAULT false,
isbilled boolean DEFAULT false,
CONSTRAINT "$1" CHECK ((jobnumber <> ''::text))
);

My problem is that I have had to import legacy data
for the jobnumber column. My client was originally
using an excel file. they were free to do as they
pleased and there are jobnumbers like '1041.01'
'1041.02'.

I can not seem to update these rows because of the dot
in the jobnumber field. I have found that I can change
the dot to an underscore but I thought I would ask if
there is a better solution.

here is the error:

UPDATE jobinfo SET isbilled = false WHERE jobnumber =
'1162.01';
ERROR: syntax error at or near ".01" at character 20
CONTEXT: PL/pgSQL function "notify_jobinfo" line 2 at
execute statement

Ted



__________________________________
Do you Yahoo!?
Yahoo! Movies - Buy advance tickets for 'Shrek 2'
http://movies.yahoo.com/showtimes/movie?mid=1808405861

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Bruno Wolff III 2004-05-12 18:16:20 Re: How do i extract a certain bit from a bigint column
Previous Message Gary Stainburn 2004-05-12 14:06:35 solved Re: view problem - too many rows out