我从未编写过DDL触发器,但我的理解是它们在架构发生变化时运行SQL。我希望简化重复性任务。我不确定它们是否真的只是为审计目的而设计的。
基本上,问题是:SQL Server 2008中的DDL触发器是否与我想要做的完全匹配? (并且,如果您已经执行此操作并在那里拥有sql代码,请将其粘贴到其中吗?)
答案 0 :(得分:1)
没有DDL触发器不适合您想要做的事情。
DDL触发器在表已创建后运行。
列不能追溯添加identity
属性,这意味着您的触发器需要使用动态SQL立即删除新创建的表并重新创建它。
即使假设这只是个人项目,所以你没有其他开发人员担心会出现意外,并且不会因效率低下而烦恼,无论你尝试生成create
脚本都很难做到并从头开始或解析CommandText
作为起点。
如果这是您的常见模式,那么您可能需要调查在SSMS的模板资源管理器中创建自定义CREATE TABLE
模板。