PL/SQL script problem

From: James Thomson <itabl7up_at_yahoo.com>
Date: Thu, 09 Sep 1999 13:33:59 GMT
Message-ID: <7r8d07$bjd$1_at_nnrp1.deja.com>


Can anyone find what is giving me this error:

DECLARE
*
ERROR at line 1:
ORA-02049: timeout: distributed transaction waiting for lock ORA-06512: at line 15

Here is my script, if I substitute an actual product # for the 2 v_tdrow.prod's and make the cursor only fetch one row, it works, so I think something is wrong with the way I'm doing the cursor or using it.

DECLARE
v_tdrow prdinfo.qty_sold%type;
  CURSOR info IS

        select distinct prod_id as prod_id from order_in_detail;

BEGIN OPEN info;
  LOOP

	FETCH info INTO v_tdrow;
	EXIT WHEN info%NOTFOUND;

	UPDATE prdinfo set qty_sold=(select sum(order_qty) from
order_in_detail where prod_id=v_tdrow.prod_id) where prod_id=v_tdrow.prod_id;
  END LOOP;
  close info;
COMMIT WORK;
END;
.
/

James Thomson
itabl7up_at_yahoo.com

Sent via Deja.com http://www.deja.com/
Share what you know. Learn what you don't. Received on Thu Sep 09 1999 - 15:33:59 CEST

Original text of this message