ORA-22816: unsupported feature with RETURNING clause with TemporaryLobUpdate on true

Discussion of open issues, suggestions and bugs regarding ODAC (Oracle Data Access Components) for Delphi, C++Builder, Lazarus (and FPC)
Post Reply
AdamKG
Posts: 18
Joined: Fri 13 Nov 2009 10:32

ORA-22816: unsupported feature with RETURNING clause with TemporaryLobUpdate on true

Post by AdamKG » Wed 28 Apr 2021 16:41

Hello,
I started to get Oracle error ORA-22816: unsupported feature with RETURNING clause after upgrade from 11.3.2 to 11.4.3.

When I have a view on a single table for instance:

Code: Select all

create view v_odac_clob as
select * from odac_clob
With instead of trigger for example:

Code: Select all

create or replace trigger t_v_odac_clob
  instead of insert or update or delete on v_odac_clob  
  for each row
begin
  if inserting then
    insert into odac_clob(code, title, value)
    values
      (:new.code, :new.title, :new.value);
  end if;

  if updating then
    update odac_clob u
       set u.code = :new.code,
           u.title = :new.title,
           u.value = :new.value
     where u.code = :old.code
       and u.title = :old.title;
  end if;

  if deleting then
    delete from odac_clob u
     where u.code = :old.code
       and u.title = :old.title;
  end if;
  
end t_v_odac_clob;
In 11.3.2 I got same error but setting Options.TemporaryLobUpdate := True fixed it. Now in 11.4.3 it appears to me that TemporaryLobUpdate is ignored and update statement is always generated with returning clause which will not work with instead of triggers.

AdamKG
Posts: 18
Joined: Fri 13 Nov 2009 10:32

Re: ORA-22816: unsupported feature with RETURNING clause with TemporaryLobUpdate on true

Post by AdamKG » Mon 17 May 2021 20:00

Did you manage to confirm this bug?

Post Reply