查询以查找所有已定义的触发器并搜索存储过程

时间:2012-08-15 20:21:17

标签: sql-server

我们有数百张表格不佳的表格。

是否有任何疑问:

  1. 将打印出哪些表具有触发器和那些触发器的名称

  2. 可以在当前定义的存储过程中搜索文本吗?

  3. 谢谢, 布鲁斯

2 个答案:

答案 0 :(得分:1)

答案 1 :(得分:0)

为简洁起见,您可以试试这个:

SELECT t.name AS TriggerName, o.name AS ParentObject, m.definition AS TriggerDefinition FROM sys.triggers t LEFT JOIN sys.objects o ON t.parent_id = o.object_id LEFT JOIN sys.sql_modules m ON t.object_id = m.object_id;

如果要在所述触发器的代码中找到任何特定文本(在本例中为Test),则可以添加WHERE m.definition LIKE '%Test%'子句。