On 12.09.2018 at 14:40, Omacht András aoma...@mve.hu [firebird-support] 
wrote:
> Tested on 2.5.8, dialect 1:
> 
> 
> 
> CREATE TABLE RESERVED_DATE (
> 
>      RES_DATE  DATE NOT NULL
> 
> );
> 
> ALTER TABLE RESERVED_DATE ADD CONSTRAINT RESERVED_DATE_PK PRIMARY KEY 
> (RES_DATE);
> 
> 
> 
> CREATE TABLE MEETINGS (
> 
>      DATE_FROM  DATE NOT NULL,
> 
>      DATE_TO    DATE NOT NULL
> 
> );
> 
> 
> 
> CREATE OR ALTER TRIGGER MEETINGS_BI FOR MEETINGS
> 
> ACTIVE BEFORE INSERT POSITION 0
> 
> as
> 
> declare variable curr_date date;
> 
> begin
> 
>    curr_date = new.date_from;
> 
>    while (curr_date <= new.date_to) do
> 
>      begin
> 
>        insert into reserved_date (res_date) values (:curr_date);
> 
>        curr_date = dateadd(1 day to curr_date);
> 
>      end
> 
> end
> 
> 
> 
> run on first transaction:
> 
> 
> 
> insert into MEETINGS (DATE_FROM, DATE_TO)
> 
> values ('2018.09.01', '2018.09.10')
> 
> 
> 
> run parallel on secound transaction:
> 
> insert into MEETINGS (DATE_FROM, DATE_TO)
> 
> values ('2018.09.08', '2018.09.15')
> 
> 
> 
> violation of PRIMARY or UNIQUE KEY constraint "RESERVED_DATE_PK" on table 
> "RESERVED_DATE".
> 
> Problematic key value is ("RES_DATE" = '8-SEP-2018').
> 
> At trigger 'MEETINGS_BI' line: 9, col: 7.

OK, what I didn't get was that you intended to put _all_ subsequent 
dates from within an interval to the auxiliary table.
Well, that way it should work. And I wouldn't be too worried about the 
size of the table, unless the intervals would be hundreds of years long.

Tomasz


-- 
__--==============================--__
__--==     Tomasz Tyrakowski    ==--__
__--==        SOL-SYSTEM        ==--__
__--== http://www.sol-system.pl ==--__
__--==============================--__
  • [firebi... liviuslivius liviusliv...@poczta.onet.pl [firebird-support]
    • RE... Omacht András aoma...@mve.hu [firebird-support]
      • ... Tomasz Tyrakowski t.tyrakow...@sol-system.pl [firebird-support]
        • ... Omacht András aoma...@mve.hu [firebird-support]
          • ... Tomasz Tyrakowski t.tyrakow...@sol-system.pl [firebird-support]
          • ... 'Louis van Alphen' lo...@nucleo.co.za [firebird-support]
            • ... Karol Bieniaszewski liviusliv...@poczta.onet.pl [firebird-support]
              • ... Omacht András aoma...@mve.hu [firebird-support]
                • ... Karol Bieniaszewski liviusliv...@poczta.onet.pl [firebird-support]
                • ... Omacht András aoma...@mve.hu [firebird-support]
          • ... Tomasz Tyrakowski t.tyrakow...@sol-system.pl [firebird-support]
        • ... Svein Erling Tysvær setys...@gmail.com [firebird-support]
          • ... Tomasz Tyrakowski t.tyrakow...@sol-system.pl [firebird-support]
    • Re... Svein Erling Tysvær setys...@gmail.com [firebird-support]
    • [f... liviuslivius liviusliv...@poczta.onet.pl [firebird-support]

Reply via email to