-- Copyright (C) 2012 The Meme Factory, Inc., http://www.meme.com/
--
-- This file is part of Gombe-MI.
--
-- Gombe-MI is free software; you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by
-- the Free Software Foundation; either version 3 of the License, or
-- (at your option) any later version.
--
-- This program is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU General Public License for more details.
--
-- You should have received a copy of the GNU General Public License
-- along with Gombe-MI. If not, see .
--
-- SQL to test on update of of biography_data that the sib cannot be
-- younger than the infant.
--
-- All data appearing in this work are fictitious. Any resemblance to
-- actual data, living or archived, is purely coincidental.
--
-- Karl O. Pinc
--
-- Commit the transaction and then start a new one so as to
-- be sure that we test the biography_data update trigger, which
-- is deferred until transaction commit.
commit;
begin;
--
-- Main tables.
--
-- biography_data
do $$
declare
this_date date;
begin
select biography_data.birthdate
from biography_data
into this_date
where biography_data.animid = 'KID';
update biography_data
set birthdate = this_date
, bdmin = this_date
, bdmax = this_date
, entrydate = this_date
where animid = 'SIB';
end;
$$;
select 'Sib must be older than infant in follow: on update of biography_data' as message;