Re: Strange DB Trigger behavior
- From: Toon Koppelaars <toon.koppelaars@xxxxxxxxxxx>
- To: Thomas.Mercadante@xxxxxxxxxxxxxxxxx
- Date: Mon, 13 Jul 2009 20:00:01 +0200
>
> I would expect that when a row is being updated *and a modify_date was not
> provided* in the update statement, that ...
I think you should change this to:
I would expect that when a row is being updated* and a modify_date was
provided and assigned to NULL* in the update statement, that ...
Haven't tested it though, but it's what I would suspect.
On Mon, Jul 13, 2009 at 7:54 PM, Mercadante, Thomas F (LABOR) <
Thomas.Mercadante@xxxxxxxxxxxxxxxxx> wrote:
> All,
>
>
>
> I am running a 10.2.0.2 database on Aix.
>
>
>
> I have standard db triggers on tables that are not acting as I expect.
> Please give me a sanity check:
>
>
>
> create or replace trigger tran_data_biu
>
> before insert or update
>
> on tran_Data
>
> for each row
>
>
>
> begin
>
>
>
> if updating then
>
> if :new.modify_date is null then
>
> :new.modify_date := sysdate;
>
> end if;
>
> end if;
>
> end;
>
>
>
> I would expect that when a row is being updated and a modify_date was not
> provided in the update statement, that the above trigger would fill the
> column in with sysdate. But this is not happening. The only time the above
> happens is when the column is null the first time. After a date exists, the
> “new” value is populated with the “old” value.
>
>
>
> Does this make sense to you? My memory might be slipping, but that is what
> I would expect.
>
>
> Thanks
>
>
> Tom
>
>
>
--
Toon Koppelaars
RuleGen BV
+31-615907269
Toon.Koppelaars@xxxxxxxxxxx
www.RuleGen.com
TheHelsinkiDeclaration.blogspot.com
(co)Author: "Applied Mathematics for Database Professionals"
www.RuleGen.com/pls/apex/f?p=14265:13
Other related posts: