Computer >> 컴퓨터 >  >> 프로그램 작성 >> 프로그램 작성

트리거와 프로시저의 차이점

<시간/>

이번 포스팅에서는 트리거와 프로시저의 차이점을 알아보도록 하겠습니다.

트리거

  • 데이터베이스의 테이블에서 INSERT, DELETE, UPDATE와 같은 이벤트가 발생할 때 암시적으로 호출됩니다.

  • 트리거 중첩은 테이블을 사용하여 수행할 수 있습니다.

  • 트리거는 다른 트리거 내에서 호출하거나 정의할 수 없습니다.

  • 'COMMIT', 'ROLLBACK', 'SAVEPOINT'와 같은 트랜잭션 문은 트리거를 사용할 수 없습니다.

  • 참조 무결성을 유지하는 데 사용됩니다.

  • 이것은 테이블에서 수행된 활동의 기록을 유지함으로써 수행됩니다.

  • 트리거에 값이 반환되지 않습니다.

  • 트리거에 매개변수로 값을 전달할 수 없습니다.

트리거 정의 구문:

CREATE TRIGGER trigger_name

절차

  • 'exec', 'EXECUTE' 또는 'procedure_name'과 같은 명령문을 사용하여 사용자 또는 애플리케이션에 의해 명시적으로 호출됩니다.

  • 호출할 수도 있고 다른 프로시저 내에서 정의할 수도 있습니다.

  • 프로시저에서 'COMMIT', 'ROLLBACK', 'SAVEPOINT'와 같은 트랜잭션 문을 사용할 수 있습니다.

  • 절차는 사용자가 지정한 작업을 수행하는 데 사용됩니다.

  • 값을 프로시저에 매개변수로 전달할 수 있습니다.

  • 0에서 'n' 사이의 값을 반환할 수 있습니다.

프로시저를 정의하는 구문:

CREATE PROCEDURE procedure_name