Re: Help with trigger
От | Guillaume Lelarge |
---|---|
Тема | Re: Help with trigger |
Дата | |
Msg-id | 4D18E1E0.9010409@lelarge.info обсуждение исходный текст |
Ответ на | Help with trigger (Michael Satterwhite <michael@weblore.com>) |
Ответы |
Re: Help with trigger
|
Список | pgsql-general |
Le 27/12/2010 18:57, Michael Satterwhite a écrit : > I'm new to PostgreSQL, but have worked with other databases. I'm trying to > write a trigger to default a timestamp column to a fixed interval before > another. The test setup is as follows: > > create table test > ( date1 timestamp, > date2 timestamp > ); > > create or replace function t_listing_startdate() returns trigger as > $t_listing_startdate$ > begin > if NEW.date2 is null then > NEW.date2 := NEW.date1 - interval '7 day'; > end if; > return NEW; > end; > $t_listing_startdate$ LANGUAGE plpgsql; > > CREATE TRIGGER t_listing_startdate before insert or update on test > for each row execute procedure t_listing_startdate(); > > Insert into test(date1) values('May 4, 2012'); > INSERT 0 1 > test=# select * from test; > date1 | date2 > ---------------------+------- > 2012-04-27 00:00:00 | > (1 row) > > I'm obviously missing something ... and probably something obvious. Why is > date2 still null? > I'm not sure it'll help you. I copy/pasted your SQL script in my 9.0.2 release. Worked great. What does \d says about your table? your trigger could be disabled. -- Guillaume http://www.postgresql.fr http://dalibo.com
В списке pgsql-general по дате отправления: