1
我有一个字典,它包含我的数据库中更新的表和字段,我保留 来构建查询和其他内容。SQL服务器作业来跟踪数据库更改
我想在每次创建或更改表时刷新此字典。
我的解决方案是创建一个sql作业,该作业更新一个具有布尔值的表,每个更改都有一个叫做 的IsDBDictionaryUpdated。
如何通过跳转每个数据库结构更改的常规触发器来激活此作业?
我有一个字典,它包含我的数据库中更新的表和字段,我保留 来构建查询和其他内容。SQL服务器作业来跟踪数据库更改
我想在每次创建或更改表时刷新此字典。
我的解决方案是创建一个sql作业,该作业更新一个具有布尔值的表,每个更改都有一个叫做 的IsDBDictionaryUpdated。
如何通过跳转每个数据库结构更改的常规触发器来激活此作业?
最简单的事情就是创建一个DDL触发器,当表被修改或创建时触发。然后,使用exec语句,您可以执行想要更新字典的作业。
CREATE TRIGGER safety
ON DATABASE
FOR CREATE_TABLE, DROP_TABLE, ALTER_TABLE
AS
EXEC msdb..sp_start_job
@job_name = 'JobName';
GO
这里是给MS文章的链接: http://msdn.microsoft.com/en-us/library/ms175941.aspx
谢谢! 其实我认为我可以传递工作,只使用触发器,因为我只需要更新表中的一个字段值。 – FelProNet
听起来像一个计划。 DDL触发是关键。 – Brian