트리거 마이그레이션Migrating Triggers

이 항목은 다음에 적용됩니다. 예SQL Server(2016부터)예Azure SQL Database아니요Azure SQL Data Warehouse아니요병렬 데이터 웨어하우스 THIS TOPIC APPLIES TO: yesSQL Server (starting with 2016)yesAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

이 항목에서는 DDL 트리거와 메모리 액세스에 최적화된 테이블에 대해 설명합니다.This topic discusses DDL triggers and memory-optimized tables.

DML 트리거는 메모리 액세스에 최적화된 테이블에서 지원되지만 FOR | AFTER 트리거 이벤트로만 지원됩니다.DML triggers are supported on memory-optimized tables, but only with the FOR | AFTER trigger event. 예제는 FROM 또는 하위 쿼리를 사용하여 UPDATE 구현을 참조하세요.For an example see Implementing UPDATE with FROM or Subqueries.

LOGON 트리거는 LOGON 이벤트에 대해 발생하도록 정의된 트리거입니다.LOGON triggers are triggers defined to fire on LOGON events. LOGON 트리거는 메모리 액세스에 최적화된 테이블에 영향을 주지 않습니다.LOGON triggers do not affect memory-optimized tables.

DDL 트리거DDL Triggers

DDL 트리거는 이 트리거가 정의된 데이터베이스 또는 서버에서 CREATE, ALTER, DROP, GRANT, DENY, REVOKE, or UPDATE STATISTICS 문을 실행할 때 발생하도록 정의된 트리거입니다.DDL triggers are triggers defined to fire when a CREATE, ALTER, DROP, GRANT, DENY, REVOKE, or UPDATE STATISTICS statement is executed on the database or server on which it is defined.

데이터베이스 또는 서버에 CREATE_TABLE 또는 이를 포함하는 이벤트 그룹에 정의된 DDL 트리거가 하나 이상 있으면 메모리 액세스에 최적화된 테이블을 만들 수 없습니다.You cannot create memory-optimized tables if the database or server has one or more DDL trigger defined on CREATE_TABLE or any event group that includes it. 데이터베이스 또는 서버에 DROP_TABLE 또는 이를 포함하는 이벤트 그룹에 정의된 DDL 트리거가 하나 이상 있으면 메모리 액세스에 최적화된 테이블을 삭제할 수 없습니다.You cannot drop a memory-optimized table if the database or server has one or more DDL trigger defined on DROP_TABLE or any event group that includes it.

CREATE_PROCEDURE, DROP_PROCEDURE 또는 이러한 이벤트를 포함하는 이벤트 그룹에 DDL 트리거나 하나 이상 있는 경우에는 고유하게 컴파일된 저장 프로시저를 만들 수 없습니다.You cannot create natively compiled stored procedures if there are one or more DDL triggers on CREATE_PROCEDURE, DROP_PROCEDURE, or any event group that includes those events.

참고 항목See Also

메모리 내 OLTP로 마이그레이션Migrating to In-Memory OLTP