0
테이블 ABC
의 abc_xyz
업데이트를위한 AFTER UPDATE
트리거를 작성했습니다. 누군가가 동일한 테이블의 열 ans_mode
을 업데이트하려고하면 트리거가 시작됩니다. abc_xyz
의 기본값은 0
입니다. 트리거가 1
으로 업데이트해야합니다. AFTER UPDATE 트리거
CREATE OR REPLACE TRIGGER switchtrigger
AFTER UPDATE OF ans_mode
ON ABC
BEGIN
UPDATE ABC
SET abc_xyz = 1
WHERE abc_xyz= 0 AND ;
END;
나는 만 특정 행을 업데이트하기 위해 있도록
AND
조건을 쓰기 위해 노력하고 있어요.
Thanks Jarvis, 행 트리거를 쓰려고했지만 같은 테이블에서 updation이 수행되면서 테이블 오류가 변경되었습니다. ABC_XYZ의 기본값은 0입니다. 그래서 쿼리에 언급 된 IF 조건은 모든 행을 바로 업데이트 할 것입니다. ?? 사용자/누군가가 변경 한 행을 우회하기 만하면됩니다. –
행 트리거에서 테이블이 선언 된 테이블에 액세스하는 SQL 문을 실행할 수 없습니다. 이는 "테이블 변경"오류에 관한 것입니다. ON UPDATE 행 트리거는 선언 된 조건에 따라 실제로 변경된 행에 대해서만 호출되므로이 트리거는 ABC.ANS_MODE가 변경된 행에만 영향을 미칩니다. 약간의 코드를 작성하고 테스트 해보는 것이 좋습니다. –
답장을 보내 주시면 죄송합니다. 감사합니다. Jarvis. 나는 시험을했고 효과가 있었다. After 업데이트 트리거를 사용하면 어떤 차이가 있습니까? (업데이트 이후에는 발생하지 않음) –