Hello,

I have one problematic trigger.
When I insert into LEVEL table, all database instance crash down.
When there is the same trigger but without 2 lines:
line 16 and 31 is EXECUTE insertstmt;
everything is running and in the debug table TEST I can see all correct insert statemants.
Trigger is also running when there is only one prat of it (parts are separated by empty line).
Can you help me, please. What am I doing wrong?


Regards, Dusan

CREATE TRIGGER LEVEL_UPDATE FOR LEVEL AFTER UPDATE EXECUTE
(
   VAR
     tbname     Char (100);
     insertstmt Char (300);
     addrid     Integer;
     levval     Integer;

DECLARE TAB CURSOR FOR SELECT EVENTTBNAME FROM ADMIN.FLEET_USER WHERE ISCONNECTED <> 0;
WHILE $rc = 0 DO
BEGIN
FETCH TAB INTO :tbname;
IF $rc = 0 THEN
BEGIN
insertstmt = 'INSERT ADMIN.' || tbname || ' (TABLEID, OBJID, ACTIONID) VALUES (1, ' || CHR (OLD.ID) || ', 2)';
EXECUTE insertstmt; // line 16
insert admin.test set txt = :insertstmt;
END;
END;


IF (NEW.DESCR <> OLD.DESCR) THEN
BEGIN
DECLARE ADDR CURSOR FOR SELECT ADDRESS.ID, FLEET_USER.EVENTTBNAME FROM ADMIN.ADDRESS, ADMIN.FLEET_USER WHERE ADDRESS.LEVEL = :NEW.LEVEL AND FLEET_USER.ISCONNECTED <> 0 ;
WHILE $rc = 0 DO
BEGIN
FETCH ADDR INTO :addrid, :tbname;
IF $rc = 0 THEN
BEGIN
insertstmt = 'INSERT ADMIN.' || tbname || ' (TABLEID, OBJID, ACTIONID) VALUES (2, ' || CHR (addrid) || ', 2)';
EXECUTE insertstmt; // line 31
insert admin.test set txt = :insertstmt;
END;
END;
END;
)



-- MaxDB Discussion Mailing List For list archives: http://lists.mysql.com/maxdb To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]



Reply via email to