DDL 事件

适用于:SQL ServerAzure SQL 数据库Azure SQL 托管实例Microsoft Fabric 中的 SQL 数据库

下表列出了可用于激发 DDL 触发器或事件通知的 DDL 事件。 注意,每个事件都对应于一个 Transact-SQL 语句或存储过程,并且语句语法修改为在关键字之间加入了一个下划线字符 (_)。

重要

执行类似 DDL 的操作的系统存储过程也可以激发 DDL 触发器和事件通知。 请测试你的 DDL 触发器和事件通知以确定它们是否响应运行的系统存储过程。 例如, CREATE TYPE 语句和 sp_addtype 存储过程将触发在CREATE_TYPE事件上创建的 DDL 触发器或事件通知。

具有服务器或数据库作用域的 DDL 语句

可以创建 DDL 触发器或事件通知,使其在以下事件发生时触发:这些事件可以发生在创建该触发器或事件通知所在的数据库中,也可以发生在服务器实例中的任何位置。

CREATE_APPLICATION_ROLE(适用于 CREATE APPLICATION ROLE 语句和 sp_addapprole。如果创建了新架构,此事件也会触发CREATE_SCHEMA事件。

ALTER_APPLICATION_ROLE(适用于 ALTER APPLICATION ROLE 语句和 sp_approlepassword。)

DROP_APPLICATION_ROLE(适用于 DROP APPLICATION ROLE 语句和 sp_dropapprole。)

CREATE_ASSEMBLY

ALTER_ASSEMBLY

卸载装配体

CREATE_ASYMMETRIC_KEY

ALTER_ASYMMETRIC_KEY

DROP_ASYMMETRIC_KEY

更改授权

ALTER_AUTHORIZATION_DATABASE(在指定 ON ALTER AUTHORIZATION 时应用于DATABASE语句,sp_changedbowner。)

CREATE_BROKER_PRIORITY

CREATE_BROKER_PRIORITY

CREATE_BROKER_PRIORITY

CREATE_CERTIFICATE

ALTER_CERTIFICATE

删除证书

CREATE_CONTRACT

DROP_CONTRACT

创建凭据

ALTER_CREDENTIAL

删除_凭据

GRANT_DATABASE

DENY_DATABASE

撤销_数据库

创建数据库审计规范

更改数据库审核规范

删除数据库审计规范

创建数据库加密密钥

ALTER_DATABASE_ENCRYPTION_KEY

DROP_DATABASE_ENCRYPTION_KEY

CREATE_DEFAULT

DROP_DEFAULT

BIND_DEFAULT(适用于 sp_bindefault。)

UNBIND_DEFAULT(适用于 sp_unbindefault。)

CREATE_EVENT_NOTIFICATION

DROP_EVENT_NOTIFICATION

CREATE_EXTENDED_PROPERTY(适用于 sp_addextendedproperty。)

ALTER_EXTENDED_PROPERTY(适用于 sp_updateextendedproperty。)

DROP_EXTENDED_PROPERTY(适用于 sp_dropextendedproperty。)

CREATE_FULLTEXT_CATALOG(适用于 CREATE FULLTEXT CATALOG 语句,以及在指定 create 时的 sp_fulltextcatalog。)

ALTER_FULLTEXT_CATALOG(适用于 ALTER FULLTEXT CATALOG 语句、在指定 start_incrementalstart_fullStopRebuild 时的 sp_fulltextcatalog,以及在指定 enable 时的 sp_fulltext_database。)

DROP_FULLTEXT_CATALOG(适用于 DROP FULLTEXT CATALOG 语句,以及在指定 drop 时适用于 sp_fulltextcatalog。)

CREATE_FULLTEXT_INDEX(适用于 CREATE FULLTEXT INDEX 语句,以及在指定 create 时的 sp_fulltexttable。)

ALTER_FULLTEXT_INDEX(适用于 ALTER FULLTEXT INDEX 语句、当指定 start_fullstart_incrementalstop 时的 sp_fulltextcatalogsp_fulltext_column,以及当指定除 createdrop 之外的任何操作时的 sp_fulltext_table。)

DROP_FULLTEXT_INDEX(适用于 DROP FULLTEXT INDEX 语句,以及在指定 drop 时适用于 sp_fulltexttable。)

CREATE_FULLTEXT_STOPLIST

ALTER_FULLTEXT_STOPLIST

DROP_FULLTEXT_STOPLIST

CREATE_FUNCTION

ALTER_FUNCTION

DROP_FUNCTION

CREATE_INDEX

ALTER_INDEX(适用于 ALTER INDEX 语句和 sp_indexoption。)

DROP_INDEX

CREATE_MASTER_KEY

ALTER_MASTER_KEY

DROP_MASTER_KEY

创建消息类型

ALTER_MESSAGE_TYPE

DROP_MESSAGE_TYPE

CREATE_PARTITION_FUNCTION

ALTER_PARTITION_FUNCTION

DROP_PARTITION_FUNCTION

CREATE_PARTITION_SCHEME

ALTER_PARTITION_SCHEME

DROP_PARTITION_SCHEME

CREATE_PLAN_GUIDE(适用于 sp_create_plan_guide。)

ALTER_PLAN_GUIDE(在指定 ENABLE、ENABLE ALL、DISABLE 或 DISABLE ALL 时,适用于 sp_control_plan_guide。)

DROP_PLAN_GUIDE(当指定 DROP 或 DROP ALL 时,适用于sp_control_plan_guide。)

CREATE_PROCEDURE

ALTER_PROCEDURE(适用于 ALTER PROCEDURE 语句和 sp_procoption

DROP_PROCEDURE

CREATE_QUEUE

ALTER_QUEUE

DROP_QUEUE

CREATE_REMOTE_SERVICE_BINDING

ALTER_REMOTE_SERVICE_BINDING

删除远程服务绑定

CREATE_SPATIAL_INDEX

RENAME(适用于 sp_rename

CREATE_ROLE(适用于 CREATE ROLE 语句、 sp_addrolesp_addgroup

ALTER_ROLE

DROP_ROLE(适用于 DROP ROLE 语句、 sp_droprolesp_dropgroup

ADD_ROLE_MEMBER

DROP_ROLE_MEMBER

CREATE_ROUTE

ALTER_ROUTE

DROP_ROUTE

CREATE_RULE

DROP_RULE

BIND_RULE(适用于 sp_bindrule。)

UNBIND_RULE(适用于 sp_unbindrule。)

CREATE_SCHEMA(适用于 CREATE SCHEMA 语句、 sp_addrolesp_addusersp_addgroupsp_grantdbaccess

ALTER_SCHEMA(适用于 ALTER SCHEMA 语句和 sp_changeobjectowner。)

DROP_SCHEMA

CREATE_SEARCH_PROPERTY_LIST

ALTER_SEARCH_PROPERTY_LIST

DROP_SEARCH_PROPERTY_LIST

创建序列

修改序列

删除序列

CREATE_SERVER_ROLE

ALTER_SERVER_ROLE

删除服务器角色

CREATE_SERVICE

ALTER_SERVICE

DROP_SERVICE

ALTER_SERVICE_MASTER_KEY

BACKUP_SERVICE_MASTER_KEY

RESTORE_SERVICE_MASTER_KEY

ADD_SIGNATURE(用于对非架构范围的对象的签名操作;数据库,程序集,触发器)

DROP_SIGNATURE

ADD_SIGNATURE_SCHEMA_OBJECT(用于架构作用域对象,例如存储过程和函数)

DROP_SIGNATURE_SCHEMA_OBJECT

CREATE_SPATIAL_INDEX

ALTER_INDEX 可用于空间索引。

DROP_INDEX 可用于空间索引。

CREATE_STATISTICS

删除统计信息

更新统计信息

CREATE_SYMMETRIC_KEY

ALTER_SYMMETRIC_KEY

DROP_SYMMETRIC_KEY

CREATE_SYNONYM

删除同义词

CREATE_TABLE

ALTER_TABLE(适用于 ALTER TABLE 语句和 sp_tableoption。)

DROP_TABLE

CREATE_TRIGGER

ALTER_TRIGGER(适用于 ALTER TRIGGER 语句和 sp_settriggerorder

DROP_TRIGGER

CREATE_TYPE(适用于 CREATE TYPE 语句和 sp_addtype

DROP_TYPE(适用于 DROP TYPE 语句和 sp_droptype

CREATE_USER(适用于 CREATE USER 语句、 sp_addusersp_grantdbaccess

ALTER_USER(适用于 ALTER USER 语句和 sp_change_users_login。)

DROP_USER(适用于 DROP USER 语句、 sp_dropusersp_revokedbaccess

CREATE_VIEW

ALTER_VIEW

DROP_VIEW

CREATE_XML_INDEX

ALTER_INDEX 可用于 XML 索引。

DROP_INDEX 可用于 XML 索引。

CREATE_XML_SCHEMA_COLLECTION

ALTER_XML_SCHEMA_COLLECTION

DROP_XML_SCHEMA_COLLECTION

具有服务器作用域的 DDL 语句

可以创建 DDL 触发器或事件通知,以便在以下事件于服务器实例中的任何位置发生时触发。

ALTER_AUTHORIZATION_SERVER

更改服务器配置

ALTER_INSTANCE(当指定了本地服务器实例时,适用于 sp_configuresp_addserver 。)

CREATE_AVAILABILITY_GROUP

ALTER_AVAILABILITY_GROUP

DROP_AVAILABILITY_GROUP

创建凭据

ALTER_CREDENTIAL

删除_凭据

CREATE_CRYPTOGRAPHIC_PROVIDER

更改加密提供程序

删除加密提供程序

CREATE_DATABASE

ALTER_DATABASE(适用于 ALTER DATABASE 语句和 sp_fulltext_database

DROP_DATABASE

CREATE_ENDPOINT

更改端点

DROP_ENDPOINT

CREATE_EVENT_SESSION

ALTER_EVENT_SESSION

DROP_EVENT_SESSION

CREATE_EXTENDED_PROCEDURE(适用于 sp_addextendedproc。)

DROP_EXTENDED_PROCEDURE(适用于sp_dropextendedproc。)

CREATE_LINKED_SERVER(适用于 sp_addlinkedserver。)

ALTER_LINKED_SERVER(适用于 sp_serveroption。)

DROP_LINKED_SERVER(当指定了链接服务器时,适用于 sp_dropserver 。)

CREATE_LINKED_SERVER_LOGIN(适用于 sp_addlinkedsrvlogin。)

DROP_LINKED_SERVER_LOGIN(适用于 sp_droplinkedsrvlogin。)

CREATE_LOGIN(适用于 CREATE LOGIN 在必须隐式创建的不存在登录名上使用的语句、 sp_addloginsp_grantloginxp_grantloginsp_denylogin )。

ALTER_LOGIN(适用于 ALTER LOGIN 语句、sp_defaultdbsp_defaultlanguagesp_passwordsp_change_users_login,当指定 Auto_Fix 时。)

DROP_LOGIN(适用于 DROP LOGIN 语句、 sp_droploginsp_revokeloginxp_revokelogin

CREATE_MESSAGE(适用于 sp_addmessage。)

ALTER_MESSAGE(适用于 sp_altermessage。)

DROP_MESSAGE(适用于 sp_dropmessage。)

CREATE_REMOTE_SERVER(适用于 sp_addserver。)

ALTER_REMOTE_SERVER(适用于 sp_setnetname。)

DROP_REMOTE_SERVER(当指定了远程服务器时,适用于 sp_dropserver 。)

CREATE_RESOURCE_POOL

ALTER_RESOURCE_POOL

DROP_RESOURCE_POOL

GRANT_SERVER

DENY_SERVER

REVOKE_SERVER

添加服务器角色成员

DROP_SERVER_ROLE_MEMBER

创建服务器审计

ALTER_SERVER_AUDIT

删除服务器审核

创建服务器审核规范

修改服务器审核规范

删除_服务器_审核_规范

CREATE_WORKLOAD_GROUP

ALTER_WORKLOAD_GROUP

DROP_WORKLOAD_GROUP

另请参阅

DDL 触发器
事件通知
DDL 事件组