Search Postgresql Archives

Re: Help with trigger

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Monday, December 27, 2010 12:56:22 pm Gary Chambers wrote:
> Michael,
> 
> > 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)
> 
> With the exception of abbreviating the table (t) and column names (d1 and
> d2), your example as submitted works for me (8.4.5, MacOSX).  What version
> of Pg are you using and on which platform?
> 
> -- Gary Chambers

I'm running 8.4.2 on Linux


-- 
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux