前期准备:

           use studioA;
           go

           create table T(X int,Y int);

           insert into T(X,Y) values(1,1),(2,2);
           go

           -------------------------------------

           use StudioB;
           go

           create procedure proc_for_B
           as
           begin
                 select * from StudioA.dbo.T;
           end
           go

------------------------------------------------------------------------------------------------------------------------------------

方法 1、

         对象之间的引用关系、都是定义在SQL 语句中的、比如proc_A要查看tableA表,那么在proc_A的代码中就引用了tableA表;

         也就是说、我们可以从sys.sql_expression_dependencis;这个视图中查看。

 

         select referenced_entity_name as [被引用的对象名],object_name(referencing_id)[主动对象]
         from sys.sql_expression_dependencies ped;
         go

         SQL Server 查看对象之间的引用关系

方法 2、

         SQL Server 对于对象间的引用关系,也是专门有记录的。我们可以通过 

         sys.dm_sql_referenced_entities、

         sys.dm_sql_referencing_entities来查看

         

         select * from sys.dm_sql_referenced_entities( 'dbo.proc_for_B','object');
         go

         SQL Server 查看对象之间的引用关系

 

相关文章:

  • 2021-05-29
  • 2022-01-04
  • 2022-12-23
  • 2021-10-18
  • 2021-10-08
  • 2021-11-30
  • 2022-12-23
  • 2021-08-04
猜你喜欢
  • 2021-10-04
  • 2022-12-23
  • 2022-02-16
  • 2022-12-23
  • 2021-08-21
  • 2022-12-23
相关资源
相似解决方案