Skip to Main Content

Oracle Forms

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

FRM-40501 (ORA-00933) ORACLE error: unable to reserve record for update or delete

Marcel HoefsMay 27 2019 — edited Jul 22 2019

We have an (old) Oracle Forms (12c) application that uses a data model where every table has been replaced by an editioning view. Every existing table has been renamed (to the original name an "_" (underscore) character has been added) and the editioning view has the original table name. When we try to change data in this application using an Oracle Form then we get the following error "FRM-40501 (ORA-00933) ORACLE error: unable to reserve record for update or delete". This error does NOT occur when we login as the database user that owns the tables and editioning views but for every other database user we get this error.

We traced the statement Oracle Forms sends to the database and the trace file shows the following statement which causes the ORA-00933 error:

SELECT ROWID,ACT.KLT_RLE_NUMMER,ACT.VOLGNR,ACT.SOORT,ACT.KLT_RLE_NUMMER_DISPONEER,ACT.ACT_VOLGNR_DISPONEER,ACT.OMSCHRIJVING FROM ACCOUNTS ACT W FOR UPDATE OF ACT.KLT_RLE_NUMMER NOWAIT

(notice the red W between "ACT" and "FOR UPDATE" in the statement above that causes the parsing error)

Logged on as the the database user that owns the tables and editioning views we get this statement in the trace file which works just fine:

SELECT ACT.KLT_RLE_NUMMER,ACT.VOLGNR,ACT.SOORT,ACT.KLT_RLE_NUMMER_DISPONEER,ACT.ACT_VOLGNR_DISPONEER,ACT.OMSCHRIJVING FROM ACCOUNTS ACT WHERE ROWID=:1 FOR UPDATE OF ACT.KLT_RLE_NUMMER NOWAIT

What do we have to do to get rid of this error? Is Oracle Forms (12c) certified / able to use editioning views?

Thank you for your suggestions and help.

Marcel.

Comments
Post Details
Added on May 27 2019
10 comments
5,834 views