根据您的要求,您可能会发现以下内容很有用。您可以搜索所有///等的全文procedures
并查找匹配的关键字functions
。triggers
views
select Schema_Name(o.schema_id)[schema], o.[name], o.type_desc
from sys.sql_modules m
join sys.objects o on o.object_id=m.object_id
where
m.definition like '%insert%customers%' or
m.definition like '%update%customers%' or
m.definition like '%delete%customers%'
order by type_desc, name
这可以帮助您缩小范围并识别潜在对象。这本身并不精确,因为它可能会找到一个您更新orders
然后customers
在 afrom
或join
随后使用的过程。
如果您有可以依赖的约定,例如delete
will always bedelete from customers
和 not delete customers
,delete from c from...
那么您当然可以改进匹配以增加您找到的内容的相关性。
Redgate 之类的工具SQLPrompt
在这里非常有用,因为您可以编写所有以 为前缀的程序名称exec
,将其粘贴到 SSMS 中,然后立即在弹出窗口中预览每个程序的整个程序代码。