Browsing "Older Posts"

APEX-AT-WORK no image

APEX 4.1 Tabular Form - ORA-01445: cannot select ROWID from, or sample, a join view without a key-preserved table

Von Tobias Arnhold →
I played a bit with tabular forms on views using an instead of trigger. After following the guide from
Christian Rokitta I came really close to what I needed. After I thought I was ready I got the following error message:
ORA-01445: cannot select ROWID from, or sample, a join view without a key-preserved table


I didn't understood what was wrong so I searched the APEX forum for help. I found the reason in this post: https://forums.oracle.com/forums/thread.jspa?threadID=1106262
In there Marc Sewtz wrote about the issue I discovered.

My problem was that I tried to change an already existing tabular form which used declarative validations. After I deleted those validations everything worked fine.

My page was now available in 1 second instead of 5-6 seconds. Great solution.

--------------------------------------------------------------------------------------------------

One problem solved next problem ahead. When I tried updating my tabular form I got this nice Oracle error message: ORA-01031 insufficient privileges

Why?
I simply tried to add this sub-view to my updateable view which looked like that:
CREATE OR REPLACE FORCE VIEW "LOV_YES_NO" ("D", "R") AS 
select 'Yes' as d, 'y' as r from dual
union
select  'No' as d, 'n' as r from dual;

Because "DUAL" is an Oracle system table or whatever. :) I had no privileges to update on this.
So I simply added a real master data table for this and it worked as expected.