>  기사  >  데이터 베이스  >  세 가지 유형의 트리거는 무엇입니까?

세 가지 유형의 트리거는 무엇입니까?

烟雨青岚
烟雨青岚원래의
2020-07-18 09:17:1923203검색

트리거 유형은 DML 트리거, DDL 트리거 및 로그인 트리거입니다. 트리거는 데이터 무결성을 보장하기 위해 [SQL 서버]에서 제공하는 방법으로, 이벤트에 의해 실행이 트리거됩니다.

세 가지 유형의 트리거는 무엇입니까?

Trigger는 데이터 무결성을 보장하기 위해 SQL 서버에서 제공하는 방법입니다. 이는 테이블 이벤트와 관련된 특수 저장 프로시저로, 호출이 수동으로 시작되지 않습니다. 이지만 이벤트에 의해 트리거됩니다. 예를 들어 테이블이 조작(삽입, 삭제, 업데이트)되면 해당 실행이 활성화됩니다. 트리거는 데이터 무결성 제약 조건과 비즈니스 규칙을 적용하는 데 자주 사용됩니다.

트리거에는 다음과 같은 기능이 있습니다. 데이터 테이블에 쓰기 전에 데이터를 강제로 확인하거나 변환할 수 있습니다. 트리거 오류가 발생하면 트랜잭션 결과가 취소됩니다. 일부 데이터베이스 관리 시스템은 DDL 트리거라고 하는 데이터 정의 언어(DDL)용 트리거를 사용할 수 있습니다. 비정상적인 명령(INSTEAD OF)은 상황에 따라 대체될 수 있습니다.

SQL Server에는 DML 트리거, DDL 트리거, 로그인 트리거라는 세 가지 일반적인 트리거 유형이 포함되어 있습니다.

1. DML 트리거

삽입, 업데이트, 삭제 등 데이터베이스 테이블의 데이터가 변경될 때 해당 DML 트리거를 테이블에 작성하면 트리거가 자동으로 구현됩니다. DML 트리거의 주요 기능은 비즈니스 규칙을 적용하고 SQL Server 제약 조건, 기본값 등을 확장하는 것입니다. 제약 조건은 동일한 테이블의 데이터만 제한할 수 있는 반면 트리거는 모든 Sql 명령을 실행할 수 있다는 것을 알고 있기 때문입니다.

2. DDL 트리거

SQL Server2005의 새로운 트리거로 주로 데이터베이스의 테이블, 트리거, 뷰 및 기타 구조에 대한 작업을 감사하고 표준화하는 데 사용됩니다. 예를 들어 테이블 수정, 열 수정, 새 테이블 추가, 새 열 추가 등이 있습니다. 데이터베이스 구조가 변경될 때 실행되며, 데이터베이스의 수정 과정을 기록하고 특정 테이블의 삭제를 허용하지 않는 등 프로그래머가 데이터베이스를 수정하는 것을 제한하는 데 주로 사용됩니다.

3. 로그인 트리거

로그인 트리거는 LOGIN 이벤트에 대한 응답으로 저장 프로시저를 실행합니다. 이 이벤트는 SQL Server 인스턴스를 사용하여 사용자 세션이 설정될 때 발생합니다. 로그인 트리거는 로그인의 인증 단계가 완료된 후 사용자 세션이 실제로 설정되기 전에 실행됩니다. 따라서 일반적으로 사용자에게 도달하는 트리거 내의 모든 메시지(예: PRINT 문의 오류 메시지 및 메시지)는 SQL Server 오류 로그에 전달됩니다. 인증이 실패하면 로그인 트리거가 실행되지 않습니다.

추천 튜토리얼: "sql 비디오 튜토리얼"

위 내용은 세 가지 유형의 트리거는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.