Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.server -> Re: What's wrong with this trigger
"Stan Brown" <stanb_at_panix.com> wrote in message
news:9d9eve$7sd$1_at_panix2.panix.com...
> I'm trying to troubleshhot a problem created when I upgraded a third party
> application that logs data inot Oracle.
>
> My present working theory is thta the app is pading it's text fields with
> spaces. In order to test this theory, I am trying to create a trigger that
> will strip of all trailing spcase. The text fileds that I am puting in
> should contain no spaces at all. So I have created the following trigger:
>
>
>
> /*
> Create Triger For MWH_LOG */
> create or replace trigger MWH_LOG_trig
> before insert on MWH_LOG for each row
> declare
> l_id char;
> begin
> l_id := rtrim(:new.BRKR_ID,' ')
> :new.BRKR_ID := l_id;
> end;
> /
>
> But, I cna't get Oracle (7.3.4) to accept it. The table MWH_LOG does
> conatin a column named BRKR_ID, so what stupid mistake am I making here?
>
>
rtrim returns a varchar2 (ie the whole string without spaces)
You are assigning it to a char, so a string of length 1.
This will work only if only 1 char remains after trimming.
The l_id is redundant
:new.brkr_id := rtrim(:new.brkr_id);
should work.
Hth,
Sybrand Bakker, Oracle DBA Received on Tue May 08 2001 - 14:03:39 CDT