DDL 事件组

下表列出了可用于运行 DDL 触发器或事件通知的 DDL 事件组,以及它们涵盖的 Transact-SQL 语句。 请注意事件组的内在关系。 例如,指定 FOR DDL_TABLE_EVENTS (10018) 的 DDL 触发器或事件通知涵盖 CREATE TABLE、ALTER TABLE 和 DROP TABLE Transact-SQL 语句。 指定 FOR DDL_TABLE_VIEW_EVENTS (10017) 的 DDL 触发器或事件通知涵盖类型DDL_TABLE_EVENTS、DDL_VIEW_EVENTS、DDL_INDEX_EVENTS 和 DDL_STATISTICS_EVENTS 下的所有 Transact-SQL 语句。

注意

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

事件

DDL_DATABASE_LEVEL_EVENTS 下列出的事件在服务器(实例)或数据库级别执行。 DDL_SERVER_LEVEL_EVENTS 下列出的事件只在服务器级别执行。

parent_type type name
Null 296 ALTER_SERVER_CONFIGURATION
Null 10001 DDL_EVENTS
10001 10016 |DDL_DATABASE_LEVEL_EVENTS
10016 10027 | |DDL_ASSEMBLY_EVENTS
10027 102 | | |ALTER_ASSEMBLY
10027 101 | | |CREATE_ASSEMBLY
10027 103 | | |DROP_ASSEMBLY
10016 10029 | |DDL_DATABASE_SECURITY_EVENTS
10029 10033 | | |DDL_APPLICATION_ROLE_EVENTS
10033 138 | | | |ALTER_APPLICATION_ROLE
10033 137 | | | |CREATE_APPLICATION_ROLE
10033 139 | | | |DROP_APPLICATION_ROLE
10029 10038 | | |DDL_ASYMMETRIC_KEY_EVENTS
10038 248 | | | |ALTER_ASYMMETRIC_KEY
10038 247 | | | |CREATE_ASYMMETRIC_KEY
10038 249 | | | |DROP_ASYMMETRIC_KEY
10029 10036 | | |DDL_AUTHORIZATION_DATABASE_EVENTS
10036 205 | | | |ALTER_AUTHORIZATION_DATABASE
10029 10030 | | |DDL_CERTIFICATE_EVENTS
10030 198 | | | |ALTER_CERTIFICATE
10030 197 | | | |CREATE_CERTIFICATE
10030 199 | | | |DROP_CERTIFICATE
10029 10039 | | |DDL_CRYPTO_SIGNATURE_EVENTS
10039 257 | | | |ADD_SIGNATURE
10039 255 | | | |ADD_SIGNATURE_SCHEMA_OBJECT
10039 258 | | | |DROP_SIGNATURE
10039 256 | | | |DROP_SIGNATURE_SCHEMA_OBJECT
10029 10066 | | |DDL_DATABASE_AUDIT_SPECIFICATION_EVENTS
10066 291 | | | |ALTER_DATABASE_AUDIT_SPECIFICATION
10066 290 | | | |CREATE_DATABASE_AUDIT_SPECIFICATION
10066 292 | | | |DROP_DATABASE_AUDIT_SPECIFICATION
10029 10062 | | |DDL_DATABASE_ENCRYPTION_KEY_EVENTS
10062 279 | | | |ALTER_DATABASE_ENCRYPTION_KEY
10062 278 | | | |CREATE_DATABASE_ENCRYPTION_KEY
10062 280 | | | |DROP_DATABASE_ENCRYPTION_KEY
10029 10035 | | |DDL_GDR_DATABASE_EVENTS
10035 171 | | | |DENY_DATABASE
10035 170 | | | |GRANT_DATABASE
10035 172 | | | |REVOKE_DATABASE
10029 10040 | | |DDL_MASTER_KEY_EVENTS
10040 253 | | | |ALTER_MASTER_KEY
10040 252 | | | |CREATE_MASTER_KEY
10040 254 | | | |DROP_MASTER_KEY
10029 10032 | | |DDL_ROLE_EVENTS
10032 207 | | | |ADD_ROLE_MEMBER
10032 135 | | | |ALTER_ROLE
10032 134 | | | |CREATE_ROLE
10032 136 | | | |DROP_ROLE
10032 208 | | | |DROP_ROLE_MEMBER
10029 10034 | | |DDL_SCHEMA_EVENTS
10034 142 | | | |ALTER_SCHEMA
10034 141 | | | |CREATE_SCHEMA
10034 143 | | | |DROP_SCHEMA
10029 10037 | | |DDL_SYMMETRIC_KEY_EVENTS
10037 245 | | | |ALTER_SYMMETRIC_KEY
10037 244 | | | |CREATE_SYMMETRIC_KEY
10037 246 | | | |DROP_SYMMETRIC_KEY
10029 10031 | | |DDL_USER_EVENTS
10031 132 | | | |ALTER_USER
10031 131 | | | |CREATE_USER
10031 133 | | | |DROP_USER
10016 10052 | |DDL_DEFAULT_EVENTS
10052 218 | | |BIND_DEFAULT
10052 220 | | |CREATE_DEFAULT
10052 231 | | |DROP_DEFAULT
10052 242 | | |UNBIND_DEFAULT
10016 10026 | |DDL_EVENT_NOTIFICATION_EVENTS
10026 74 | | |CREATE_EVENT_NOTIFICATION
10026 76 | | |DROP_EVENT_NOTIFICATION
10016 10053 | |DDL_EXTENDED_PROPERTY_EVENTS
10053 211 | | |ALTER_EXTENDED_PROPERTY
10053 222 | | |CREATE_EXTENDED_PROPERTY
10053 233 | | |DROP_EXTENDED_PROPERTY
10016 10054 | |DDL_FULLTEXT_CATALOG_EVENTS
10054 212 | | |ALTER_FULLTEXT_CATALOG
10054 223 | | |CREATE_FULLTEXT_CATALOG
10054 234 | | |DROP_FULLTEXT_CATALOG
10016 10067 | |DDL_FULLTEXT_STOPLIST_EVENTS
10067 294 | | |ALTER_FULLTEXT_STOPLIST
10067 293 | | |CREATE_FULLTEXT_STOPLIST
10067 295 | | |DROP_FULLTEXT_STOPLIST
10016 10023 | |DDL_FUNCTION_EVENTS
10023 62 | | |ALTER_FUNCTION
10023 61 | | |CREATE_FUNCTION
10023 63 | | |DROP_FUNCTION
10016 10049 | |DDL_PARTITION_EVENTS
10049 10050 | | |DDL_PARTITION_FUNCTION_EVENTS
10050 192 | | | |ALTER_PARTITION_FUNCTION
10050 191 | | | |CREATE_PARTITION_FUNCTION
10050 193 | | | |DROP_PARTITION_FUNCTION
10049 10051 | | |DDL_PARTITION_SCHEME_EVENTS
10051 195 | | | |ALTER_PARTITION_SCHEME
10051 194 | | | |CREATE_PARTITION_SCHEME
10051 196 | | | |DROP_PARTITION_SCHEME
10016 10055 | |DDL_PLAN_GUIDE_EVENTS
10055 216 | | |ALTER_PLAN_GUIDE
10055 228 | | |CREATE_PLAN_GUIDE
10055 238 | | |DROP_PLAN_GUIDE
10016 10024 | |DDL_PROCEDURE_EVENTS
10024 52 | | |ALTER_PROCEDURE
10024 51 | | |CREATE_PROCEDURE
10024 53 | | |DROP_PROCEDURE
10016 10056 | |DDL_RULE_EVENTS
10056 219 | | |BIND_RULE
10056 229 | | |CREATE_RULE
10056 239 | | |DROP_RULE
10056 243 | | |UNBIND_RULE
10016 10069 | |DDL_SEARCH_PROPERTY_LIST_EVENTS
10069 298 | | |ALTER_SEARCH_PROPERTY_LIST
10069 297 | | |CREATE_SEARCH_PROPERTY_LIST
10069 299 | | |DROP_SEARCH_PROPERTY_LIST
10016 10070 | |DDL_SEQUENCE_EVENTS
10070 304 | | |ALTER_SEQUENCE
10070 303 | | |CREATE_SEQUENCE
10070 305 | | |DROP_SEQUENCE
10016 10041 | |DDL_SSB_EVENTS
10041 10063 | | |DDL_BROKER_PRIORITY_EVENTS
10063 282 | | | |ALTER_BROKER_PRIORITY
10063 281 | | | |CREATE_BROKER_PRIORITY
10063 283 | | | |DROP_BROKER_PRIORITY
10041 10043 | | |DDL_CONTRACT_EVENTS
10043 154 | | | |CREATE_CONTRACT
10043 156 | | | |DROP_CONTRACT
10041 10042 | | |DDL_MESSAGE_TYPE_EVENTS
10042 152 | | | |ALTER_MESSAGE_TYPE
10042 151 | | | |CREATE_MESSAGE_TYPE
10042 153 | | | |DROP_MESSAGE_TYPE
10041 10044 | | |DDL_QUEUE_EVENTS
10044 158 | | | |ALTER_QUEUE
10044 157 | | | |CREATE_QUEUE
10044 159 | | | |DROP_QUEUE
10041 10047 | | |DDL_REMOTE_SERVICE_BINDING_EVENTS
10047 175 | | | |ALTER_REMOTE_SERVICE_BINDING
10047 174 | | | |CREATE_REMOTE_SERVICE_BINDING
10047 176 | | | |DROP_REMOTE_SERVICE_BINDING
10041 10046 | | |DDL_ROUTE_EVENTS
10046 165 | | | |ALTER_ROUTE
10046 164 | | | |CREATE_ROUTE
10046 166 | | | |DROP_ROUTE
10041 10045 | | |DDL_SERVICE_EVENTS
10045 162 | | | |ALTER_SERVICE
10045 161 | | | |CREATE_SERVICE
10045 163 | | | |DROP_SERVICE
10016 10022 | |DDL_SYNONYM_EVENTS
10022 34 | | |CREATE_SYNONYM
10022 36 | | |DROP_SYNONYM
10016 10017 | |DDL_TABLE_VIEW_EVENTS
10017 10020 | | |DDL_INDEX_EVENTS
10020 213 | | | |ALTER_FULLTEXT_INDEX
10020 25 | | | |ALTER_INDEX
10020 224 | | | |CREATE_FULLTEXT_INDEX
10020 24 | | | |CREATE_INDEX
10020 274 | | | |CREATE_SPATIAL_INDEX
10020 206 | | | |CREATE_XML_INDEX
10020 235 | | | |DROP_FULLTEXT_INDEX
10020 26 | | | |DROP_INDEX
10017 10021 | | |DDL_STATISTICS_EVENTS
10021 27 | | | |CREATE_STATISTICS
10021 29 | | | |DROP_STATISTICS
10021 28 | | | |UPDATE_STATISTICS
10017 10018 | | |DDL_TABLE_EVENTS
10018 22 | | | |ALTER_TABLE
10018 21 | | | |CREATE_TABLE
10018 23 | | | |DROP_TABLE
10017 10019 | | |DDL_VIEW_EVENTS
10019 42 | | | |ALTER_VIEW
10019 41 | | | |CREATE_VIEW
10019 43 | | | |DROP_VIEW
10016 10025 | |DDL_TRIGGER_EVENTS
10025 72 | | |ALTER_TRIGGER
10025 71 | | |CREATE_TRIGGER
10025 73 | | |DROP_TRIGGER
10016 10028 | |DDL_TYPE_EVENTS
10028 91 | | |CREATE_TYPE
10028 93 | | |DROP_TYPE
10016 10048 | |DDL_XML_SCHEMA_COLLECTION_EVENTS
10048 178 | | |ALTER_XML_SCHEMA_COLLECTION
10048 177 | | |CREATE_XML_SCHEMA_COLLECTION
10048 179 | | |DROP_XML_SCHEMA_COLLECTION
10016 241 | |重 命名
10001 10002 |DDL_SERVER_LEVEL_EVENTS
10002 214 | |ALTER_INSTANCE
10002 10071 | |DDL_AVAILABILITY_GROUP_EVENTS
10071 307 | | |ALTER_AVAILABILITY_GROUP
10071 306 | | |CREATE_AVAILABILITY_GROUP
10071 308 | | |DROP_AVAILABILITY_GROUP
10002 10004 | |DDL_DATABASE_EVENTS
10004 202 | | |ALTER_DATABASE
10004 201 | | |CREATE_DATABASE
10004 203 | | |DROP_DATABASE
10002 10003 | |DDL_ENDPOINT_EVENTS
10003 182 | | |ALTER_ENDPOINT
10003 181 | | |CREATE_ENDPOINT
10003 183 | | |DROP_ENDPOINT
10002 10057 | |DDL_EVENT_SESSION_EVENTS
10057 265 | | |ALTER_EVENT_SESSION
10057 264 | | |CREATE_EVENT_SESSION
10057 266 | | |DROP_EVENT_SESSION
10002 10011 | |DDL_EXTENDED_PROCEDURE_EVENTS
10011 221 | | |CREATE_EXTENDED_PROCEDURE
10011 232 | | |DROP_EXTENDED_PROCEDURE
10002 10012 | |DDL_LINKED_SERVER_EVENTS
10012 263 | | |ALTER_LINKED_SERVER
10012 225 | | |CREATE_LINKED_SERVER
10012 10013 | | |DDL_LINKED_SERVER_LOGIN_EVENTS
10013 226 | | | |CREATE_LINKED_SERVER_LOGIN
10013 236 | | | |DROP_LINKED_SERVER_LOGIN
10012 262 | | |DROP_LINKED_SERVER
10002 10014 | |DDL_MESSAGE_EVENTS
10014 215 | | |ALTER_MESSAGE
10014 227 | | |CREATE_MESSAGE
10014 237 | | |DROP_MESSAGE
10002 10015 | |DDL_REMOTE_SERVER_EVENTS
10015 217 | | |ALTER_REMOTE_SERVER
10015 230 | | |CREATE_REMOTE_SERVER
10015 240 | | |DROP_REMOTE_SERVER
10002 10058 | |DDL_RESOURCE_GOVERNOR_EVENTS
10058 273 | | |ALTER_RESOURCE_GOVERNOR_CONFIG
10058 10059 | | |DDL_RESOURCE_POOL
10059 268 | | | |ALTER_RESOURCE_POOL
10059 267 | | | |CREATE_RESOURCE_POOL
10059 269 | | | |DROP_RESOURCE_POOL
10058 10060 | | |DDL_WORKLOAD_GROUP
10060 271 | | | |ALTER_WORKLOAD_GROUP
10060 270 | | | |CREATE_WORKLOAD_GROUP
10060 272 | | | |DROP_WORKLOAD_GROUP
10002 10005 | |DDL_SERVER_SECURITY_EVENTS
10005 209 | | |ADD_SERVER_ROLE_MEMBER
10005 301 | | |ALTER_SERVER_ROLE
10005 300 | | |CREATE_SERVER_ROLE
10005 10008 | | |DDL_AUTHORIZATION_SERVER_EVENTS
10008 204 | | | |ALTER_AUTHORIZATION_SERVER
10005 10009 | | |DDL_CREDENTIAL_EVENTS
10009 260 | | | |ALTER_CREDENTIAL
10009 259 | | | |CREATE_CREDENTIAL
10009 261 | | | |DROP_CREDENTIAL
10005 10061 | | |DDL_CRYPTOGRAPHIC_PROVIDER_EVENTS
10061 276 | | | |ALTER_CRYPTOGRAPHIC_PROVIDER
10061 275 | | | |CREATE_CRYPTOGRAPHIC_PROVIDER
10061 277 | | | |DROP_CRYPTOGRAPHIC_PROVIDER
10005 10007 | | |DDL_GDR_SERVER_EVENTS
10007 168 | | | |DENY_SERVER
10007 167 | | | |GRANT_SERVER
10007 169 | | | |REVOKE_SERVER
10005 10006 | | |DDL_LOGIN_EVENTS
10006 145 | | | |ALTER_LOGIN
10006 144 | | | |CREATE_LOGIN
10006 146 | | | |DROP_LOGIN
10005 10064 | | |DDL_SERVER_AUDIT_EVENTS
10064 285 | | | |ALTER_SERVER_AUDIT
10064 284 | | | |CREATE_SERVER_AUDIT
10064 286 | | | |DROP_SERVER_AUDIT
10005 10065 | | |DDL_SERVER_AUDIT_SPECIFICATION_EVENTS
10065 288 | | | |ALTER_SERVER_AUDIT_SPECIFICATION
10065 287 | | | |CREATE_SERVER_AUDIT_SPECIFICATION
10065 289 | | | |DROP_SERVER_AUDIT_SPECIFICATION
10005 10010 | | |DDL_SERVICE_MASTER_KEY_EVENTS
10010 251 | | | |ALTER_SERVICE_MASTER_KEY
10005 302 | | |DROP_SERVER_ROLE
10005 210 | | |DROP_SERVER_ROLE_MEMBER

通过运行以下代码示例可以创建上述数据。

WITH DirectReports(name, parent_type, type, level, sort) AS   
(  
    SELECT CONVERT(varchar(255),type_name), parent_type, type, 1, CONVERT(varchar(255),type_name)  
    FROM sys.trigger_event_types   
    WHERE parent_type IS NULL  
    UNION ALL  
    SELECT  CONVERT(varchar(255), REPLICATE ('|   ' , level) + e.type_name),  
        e.parent_type, e.type, level + 1,  
    CONVERT (varchar(255), RTRIM(sort) + '|   ' + e.type_name)  
    FROM sys.trigger_event_types AS e  
        INNER JOIN DirectReports AS d  
        ON e.parent_type = d.type   
)  
SELECT parent_type, type, name  
FROM DirectReports  
ORDER BY sort;  

另请参阅

事件通知
DDL 触发器
DDL 事件