프로시져를 만들었는데요 ㅠㅠ
선후행을 체크할려고
CREATE OR REPLACE PROCEDURE UFNGDBA.ddd
IS
v_state CHAR;
V_STATE2 char;
BEGIN
SELECT state
INTO v_state2
FROM TEST
WHERE SID = 100;
WHILE V_STATE2 <> '8' LOOP
BEGIN
SELECT state
INTO v_state
FROM TEST
WHERE SID = 100;
IF v_state = '8'
THEN
UPDATE TEST
SET state = '9',
in_dt = to_char(sysdate, 'yyyymmdd')
WHERE SID = 101;
DELETE FROM test1;
UPDATE TEST
SET state = '8',
out_dt = to_char(sysdate, 'yyyymmdd')
WHERE SID = 101;
COMMIT;
ELSE
UPDATE TEST
SET state = '1',
out_dt = to_char(sysdate, 'yyyymmdd')
WHERE SID = 101;
COMMIT;
BEGIN
dbms_lock.sleep(5);
END;
END IF;
COMMIT;
END;
END LOOP;
END ddd;
/
------------------------------------------------요런식인데 무한루프가 돌고있나봅니다.
프로시저가 수정도 안되고 삭제도 안되고...휴...테스트 해볼길이없네요 ㅠㅠ
도와주이소 ㅠ 고수님덜
프로시져 죽이는방법점 ㅠㅠ