Trigger makes table un-updatable

Posted by Admin on 10-Mar-2008 14:38

OpenEdge 10.1(b). I have a table tableA with 60 or so columns. I need an update trigger on tableA. The ultimate goal is to update a column of the updated row to a specified value. I am able to add the trigger without error. The problem is that once the trigger is added I am not able to update the table. Even when I deliberately do almost nothing in the trigger body (simply declaring a string), I still get the same error on an update:

update pub.tableA set city = 'City' where id = '1';

Update count = 0.

=== SQL Exception 1 ===

SQLState=HY000

ErrorCode=-219901

Internal error -2 (a column with the specified column id does not exist in the row) in SQL from subsystem RECORD SERVICES function rec_to_data called from stub_tpl_hdl_t::extract_fields on PUB.tableA for Sal. Save log for Progress technical support.

Below is the skeleton of the trigger (adds without error, this trigger is not supposed to do anything to show my point )

CREATE TRIGGER PUB.tableA AFTER UPDATE OF

ON PUB.tableA

REFERENCING NEWROW

FOR EACH ROW

BEGIN

String id = "";

END;

Removing the trigger will cause updates to work again. Also I noticed someone else had the same issue sometime back http://www.progresstalk.com/showthread.php?t=103353 (unanswered). Any help is greatly appreciated. Thanks.

Message was edited by:

Tom lerma

All Replies

Posted by Admin on 11-Mar-2008 17:35

Doing the same thing today now yields a different message but the same end result. My triggers won't work. Now when doing the same as above, creating blank trigger and running an update will now yield the following message...(how this message changed from one day to the next is a complete mystery to me)

Internal error %s (%s) in SQL from subsystem %s function %s called from %s on %s for %s. Save log for Progress technical support. (7895)

This error provides absolutely no insight whatsoever. Any ideas or suggestions are greatly appreciated.

This thread is closed