--先建记录日志表ddl_log
USE [test_db]
GO
CREATE TABLE [dbo].[ddl_log](
[log_id] [int] IDENTITY(1,1) NOT NULL,
[post_time] [datetime] NULL,
[server_name] [varchar](100) NULL,
[database_name] [varchar](100) NULL,
[login_name] [varchar](100) NULL,
[target_object_name] [varchar](100) NULL,
[event_type] [varchar](100) NULL,
[command_text] [varchar](8000) NULL,
[client_host_name] [varchar](128) NULL,
[client_ip] [varchar](20) NULL,
[client_mac] [varchar](20) NULL,
[client_program_name] [nvarchar](128) NULL,
[event_instance] [xml] NULL,
PRIMARY KEY CLUSTERED
(
[log_id] ASC
))

这篇博客介绍了如何在SQL Server中创建DDL触发器,以便监控数据库结构的变化,并将这些变化记录在名为ddl_log的表中。内容包括创建ddl_log表的SQL语句,以及定义DDL触发器的详细步骤,触发器会在数据库发生ddl_database_level_events事件时记录相关信息,如事件类型、执行代码、用户信息等。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



