Get The Stored Procedure By Table Name

  1. SELECT DISTINCT so.name FROM syscomments sc INNER JOIN sysobjects so ON sc.id=so.id WHERE sc.TEXT LIKE '%IRF%'  
  2. DECLARE @ObjectName SYSNAME  
  3. SET @ObjectName = 'IRF'  
  4. DECLARE @ObjectType VARCHAR(5)  
  5. SET @ObjectType = NULL  
  6. DECLARE @ObjectID AS BIGINT  
  7. SELECT TOP(1) @ObjectID = object_id FROM sys.objects WHERE name = @ObjectName AND type = ISNULL(@ObjectType, type)  
  8. ;WITH DependentObjectCTE (DependentObjectID, DependentObjectName, ReferencedObjectName, ReferencedObjectID)  
  9. AS  
  10. (  
  11. SELECT DISTINCT sd.object_id,OBJECT_NAME(sd.object_id),  
  12. ReferencedObject = OBJECT_NAME(sd.referenced_major_id),ReferencedObjectID = sd.referenced_major_id  
  13. FROM  
  14. sys.sql_dependencies sd  
  15. JOIN sys.objects so ON sd.referenced_major_id = so.object_id  
  16. WHERE sd.referenced_major_id = @ObjectID  
  17. UNION ALL  
  18. SELECT  
  19. sd.object_id,OBJECT_NAME(sd.object_id),OBJECT_NAME(referenced_major_id),object_id  
  20. FROM  
  21. sys.sql_dependencies sd  
  22. JOIN DependentObjectCTE do ON sd.referenced_major_id = do.DependentObjectID  
  23. WHERE sd.referenced_major_id <> sd.object_id  
  24. )  
  25. SELECT DISTINCT DependentObjectName FROM DependentObjectCTE